Slashdot Mirror


Developing for Healthcare - .NET vs J2EE?

An anonymous reader asks: "Our small southern shop (an eleven man team) is about to commence development on some medical software geared for physician's offices and hospitals. Since we have never developed in this area before (our primary source of income comes from developing software for regional transportation offices of the government) we are at loss for the reigning technologies. The two technologies we are considering are J2EE and .NET. What are the opinions of the Slashdot crowd? Surely others have developed for the monstrous healthcare industry. Thanks!" "My senior manager recommended using .NET. His argument is that most desktops he has seen in hospitals already run Windows, the development time will be cut down for this small to mid-size project, rich desktop clients are possible and there will be no application server costs involved. He also contends that .NET has more templates and abilities than J2EE (which is simply 'web targeted' in his opinion.

Half of my coworkers are with him and the other half have suggested using J2EE due to portability--we do not want to cut off any potential sources of income with an already dwindling future. Has GNU/Linux become widespread in the healthcare industry that we should consider developing for it too? What about Mac OS X server?

The last problem we have is winning over the IT staff hearts. They are the ones who ultimately give the go ahead to purchase the software. Java gets a bad rap for being slow, while Microsoft (and by extension) .NET has the shadow of being insecure. How can you possibly win?"

645 comments

  1. pfft by Anonymous Coward · · Score: 0

    How about some good ol' PHP with MySQL ?

    1. Re:pfft by Anonymous Coward · · Score: 0

      second this, LAMP owns.

      if you want a rich client, try javascript

    2. Re:pfft by Dasch · · Score: 1

      I'm with stupid (But maybe with PostgreSQL as the DB.)

  2. Re:Got here first! by Anonymous Coward · · Score: 0

    wow, congratulations. you're cool.

  3. ARGH!!!!!! by Anonymous Coward · · Score: 5, Insightful
    1. Java is not slow
    2. .NET is not insecure
    1. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Java IS slow because most programmers don't know how to make it NOT slow. Our POS system at work is Java and it sux. Takes a full MINUTE to pull up a customer record! No shit!

    2. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Every try installing oracle?

      Java IS SLOW

    3. Re:ARGH!!!!!! by alpha_foobar · · Score: 3, Informative

      1. It is possible to build faster applications using a language that compiles to native/is not interpreted. Though Java is not much slower (if slower) than other languages when implemented with this in mind. For a really slow technology try microsoft distributed queries.

      2. It is possible to build very slow .NET applications. And all technologies are only secure as the code that was developed and the architecture that they are run on. You don't have to run .NET on windows, try it with mono.net with a LAMP(ish) server build.

    4. Re:ARGH!!!!!! by Bronster · · Score: 1

      mono.net with a LAMP(ish) server build.

      What, Linux, Apache, Mono, Postgresql? It's good that there's a .NET Postgresql Client API that seems to work well.

    5. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Sounds to me like it was developed by "slow" java programmers.

    6. Re:ARGH!!!!!! by Bastian · · Score: 1, Informative

      If Java is not slow, then how come every Java app I use at work just frickin' CRAWLS compared to similar software written in native code, and generally takes up at least twice as much RAM to boot?

      My real world example for showing why I don't like Java at work:
      Step 1: Start up Excel. Load about 20 massive spreadsheets. Also start up Safari and Firefox. And get some MP3s playing on iTunes. And start XCode and tell it to start compiling the app I've been working on. Go back to Excel, and start futzing with the spreadsheets. Did I mention that those spreadsheets have multiple worksheets and cascades of formulas all over the place? Anyway, notice how the computer is slowing down, but it's not ready to die or anything.

      Step 2: Quit EVERYTHING. Load up the Java PDF viewer whose name escapes me because I got rid of it a couple months ago. Watch the program take about 40 seconds to load. Open a 20-page PDF file, watch it take even longer to display. Listen to the hard drive make a bunch of unholy noise the whole time. When it comes up, scroll the PDF. While it's struggling to draw the next page, try clicking on the Finder and see if a Finder window comes up anytime soon.

      Yeah, I've heard that the OS X JVM is slow. I think that it's still a hit against Java, because the only strong reason I can think of to use Java for things other than applets is its platform-independence. For that to be a good argument, Java has to be viable on a whole host of platforms, not just Windows and (I assume), Solaris. So if you want multiple platforms, Java is slow because it sucks on most platforms, and if you only want one platform, Java is slow because you might as well be writing native code.

    7. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      If Java is not slow, then how come every Java app I use at work just frickin' CRAWLS compared to similar software written in native code, and generally takes up at least twice as much RAM to boot?

      1. Half the RAM it takes to boot will be the JVM.
      2. I'll bet you're using a pre-1.5 JVM - in which case, it'll be a fair bit slower than if you were running it on the 1.5 JVM.

      Oh, and if it's making the rest of your system go slow, that's the fault of your OS for not managing priorities correctly. :)

    8. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Serious..

      If I write a program in C, I get minimum of memory footprint. Yes it's due to stuff that C lacks and stuff you get free in Java.

      BUT

      As a user, I couldnt give a ____ about what the programmer got for free, it shouldnt be included in the end progam anyhow.. but it is.. And it takes memory, harddrive, and general CPU resources.

      Peolpe seem to complain about that SWING/AWT are slow, other people says that its not Javas fault. They say that its cause of bad APIs of the toolkits.. Then I wounder, if its not JAVAs fault (being developed by Sun and all) whos fault is it then?

      I will end with saying, that I do Java programming for a living, and that I do think Java got its place. ON THE SERVER SIDE. Where you can buy as much memory it requires. Java is fast to write code in.

      But dont shit me with "Java is fast and Im going to prove it".. Cause in my eyes thats an bloody lie.

    9. Re:ARGH!!!!!! by CountBrass · · Score: 1

      Java is not slow.

      The JVM can take into account of the particular runtime environment it finds itself in (versions of libraries, capabilities of the cpu etc) it can actually be faster than a compiled application. It can also intelligently cache bits of content that regularly accessed.

      I see this running Websphere: my J2EE apps noticably speed up over the first day or two of running as the app server profiles the application.

      --
      Bad analogies are like waxing a monkey with a rainbow.
    10. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      >> whos fault is it then?
      User's fault, of course :)

    11. Re:ARGH!!!!!! by kernelistic · · Score: 2, Insightful

      A properly designed Java app will almost always be slower than its properly-designed C counterpart. The time-to-market might be in the Java app's favor but when it comes to run-time performance, native API (Which are usually written in C) applications take the cake.

    12. Re:ARGH!!!!!! by EvilTwinSkippy · · Score: 2, Insightful
      Yes, but your app running of J2EE isn't going to die 6 months down the line if some well meaning nurse runs Windows Update.

      (Awaits the volley of flames)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    13. Re:ARGH!!!!!! by EvilTwinSkippy · · Score: 1
      How come every US made car I use at work sucks. They ficken craws compares to stuff made by Honda, and chew up twice as much gas to boot.

      Real Word Example. Start my honda. Rev it up to the yellow line 30 times. Also adjust the mirrors. Then, start the radio playing. Drive around for a little bit. And did I mention I haul ass?

      Now, I get out of my honda and I chain the Ford Focus to 30,000 lb trailer. Now, I rev the engine and I put the car in gear, and the tires start smoking, and I get nowhere. Then I redline the engine and thing fills with smoke, and I get parts flying everywhere.

      Yeah, I've heard the Ford trannies are a little delicate. I think that's still a hit against Ford...

      ----

      Seriously, a PDF viewer written in Java? Why not write a Fast-Fourier transform to run under GW basic.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    14. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Client side Java sucks. Server side Java rocks, especially with a JIT compiler.

    15. Re:ARGH!!!!!! by Asphixiat · · Score: 1

      Because were talking about back end server apps dufus - not client apps mac boi

      -----
      quitting smoking: day 5 :)

    16. Re:ARGH!!!!!! by jeremyp · · Score: 1

      I'll bet he's using pre 1.5 too. 1.5 isn't available for MacOSX yet - at least I've not seen it.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    17. Re:ARGH!!!!!! by hc00jw · · Score: 2, Insightful

      Why does your client side Java experiences have any impact on whether this person should use it server side or not? Beside the fact that I could write a PDF viewer in any language that would run as slow as you described, making your entire point about client side Java moot at any rate.

    18. Re:ARGH!!!!!! by Tim+C · · Score: 1

      So, you write an entire technology stack off because of one shitty application?

      Here's an anecdote right back at you - at work, I usually have multiple browser windows/tabs open, multiple editors, terminal sessions, Outlook, Word, Excel, etc, and JBuilder running our web app under WebLogic. No appreciable slow down at all, everything's as responsive as you could wish.

    19. Re:ARGH!!!!!! by BohKnower · · Score: 1

      Java IS NOT slow.

      I can continue with this thread until new year

    20. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0
      If Java is not slow, then how come every Java app I use at work just frickin' CRAWLS compared to similar software written in native code, and generally takes up at least twice as much RAM to boot?

      Indeed, I feel I can develop an app in Visual Studio by the time Netbeans or Eclipse have even loaded. I could go to the bank and deposit my cheque in the time it takes for a menu to drop down in the IDE.

    21. Re:ARGH!!!!!! by GreggBert · · Score: 1
      The article author mentions they are considering J2EE, not desktop Java. Please don't mix those two things up. J2EE is server side Java and even desktop Java (J2SE) Swing based apps are pretty snappy these days if written correctly. Look at IntelliJ Idea editor as an example of a desktop Java app that responds well. For non Swing based desktop Java apps that respond well look to Eclipse with its SWT implementation as an example.

      But please, do not confuse J2SE and J2EE in terms of performance.

      --


      If you don't understand anything I post, please accept that I ate paste as a small boy...
    22. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      I say use .NET i have written in java and in .NET before and .NET makes it much easier to handle data once it is in the program. And if you need help well just click help and you will find more information about programing and examples in .NET than there is knowledge in Bill Gates's head. LOL anyways i would use .NET it is much easier to use than JAVA!

    23. Re:ARGH!!!!!! by dstech · · Score: 1

      It's a good thing you write in Java for a living. If you were writing in English, you'd be fired.

    24. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      Bzzzt - sorry, good try. Your comment would be valid if you s/C/C++/g, but I find that Java and C programs written by the same average programmer will tend to have the same performance.

    25. Re:ARGH!!!!!! by Gherald · · Score: 1, Funny

      > I can continue with this thread until new year

      After which Java will still be slow.

    26. Re:ARGH!!!!!! by Fulcrum+of+Evil · · Score: 1

      Seriously, a PDF viewer written in Java? Why not write a Fast-Fourier transform to run under GW basic.

      Isn't that the point? If Java is only usable for some apps, then why bother using it for client side?

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    27. Re:ARGH!!!!!! by TekPolitik · · Score: 1
      I find that Java and C programs written by the same average programmer will tend to have the same performance.

      There's your problem. You're using the same "average" programmer to do both.

      First problem: an average programmer has no business using C or C++. They should stay in an environment that coddles them, as Java does (so does VB).

      Second problem: A programmer who uses Java 90% of the time simply will not have the skills to write efficient C or C++, although they will probably know techniques to make the most efficient possible Java.

      For typical GUI front-ends, Java and C or C++ may appear indistinguishable, but for the places where performance matters - huge memory use and huge processing requirements - C and C++ stomp all over Java.

      Take a top C or C++ programmer against a top Java programmer, implementing the same thing, and the C or C++ programmer will produce faster and more memory efficient code every time.

    28. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      There you go again, equating C with C++. If you read my post again, I am saying that C and Java will perform about the same. On any large-scale problem, C++ will outperform both, that is sure - but not for the reasons you mention. One word: templates. (And some people think the C++ templates are bad imitations of the real thing).

      And for your information, most GUI front-ends appear slower in Java due to the JIT process....

      Please do not be such an elitist. It doesn't suit you.

    29. Re:ARGH!!!!!! by mpcooke3 · · Score: 1

      I think most javas GUI are slow because they use lightweight, non-cached and poorly optimised GUI's like Swing rather than native toolkits like SWT.

    30. Re:ARGH!!!!!! by hhlost · · Score: 0

      Here are some important things to consider that I've picked up in my experience in developing software for the medical industry (mission-critical software, I might add):

      - Hospitals typically have a whole lot of computers on the network. They get upgraded & replaced in an order that's mainly decided by politics, so the chances that your stuff will have to run on a Win95 box are high. Same goes for NT4, 98, XP w/o SP2...

      - The IT department will be reluctant to install patches, and when they do, they'll happen in stages and slowly. Don't count on them.

      - HIPPA's going to lock down a lot of what you can do. Learn it, live it, love it. If you leverage it right, and have a very clear understanding of it ('cause you can bet you bottom your customers will) it can be your sales force. (It's against the law NOT to buy our software!)

      - Your users are going to be completely locked out of everything on their machine that they don't need for day-to-day stuff. Install to the d: drive? No way! Map a network drive? Have you gone insane? -- You'll be calling IT to come up and enter an admin pass to do anything. And you're gonna wait on 'em. Of course, there are exceptions; some hospitals have the remote desktop setup.

      So, as much as I hate to say it, I recommend that you go with .NET. The IT department is used to working with MS and all the problems that come with its products. The good thing about MS products is that they're almost always compatible with other MS products (part of Bill's evil master plan, IMHO). I haven't worked much with Java, but I think your best shot of running on every machine in the place is to go with .NET.

      Luck,
      ~hhlost

    31. Re:ARGH!!!!!! by TekPolitik · · Score: 1
      C++ will outperform both, that is sure - but not for the reasons you mention. One word: templates.

      You are sadly, sadly deluded.

      Well-written C will actually outperform well-written C++.

    32. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      At least you admit your post was flamebait.

    33. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      Most Java GUIs are slow because of two factors:

      First is the user's perception: first impressions count, and the first impression a user gets is that the UI is dog-slow, because most code gets executed for the first time and the JVM JIT's it. After using the same programm for an hour, the UI will have become responsive (actually after the first minute or so of usage) but the user will still believe that it is slow.

      Secondly, the Java JVM is very good at optimizing hot spots. The hot spots however do not present themselves in a GUI environment because typically the GUI code is composed of many little classes, all different, without specific hotspots that the JIT compiler can focus on.

    34. Re:ARGH!!!!!! by unoengborg · · Score: 1

      I have not much experience of installing the latest version of Oracle, does it use java in the install proceess? That would not be all that surprising, starting applications is something that is quite slow in Java.

      However this doesn't mean that running them once started is slow. From my experience .net is not that a fast starter either for that matter. I really don't know if its faster than java I have run too few .net programs to know if they were bad examples of .net just like Oracle JDeveloper is a bad example of java or it is something more general.

      One thing is clear the .net is made as a clone of java and use similar technology, so I would be surprised if there was any major differences in speeed.

      Or do you have your oppinion that java is slow from using Oracle JDeveloper, that is painfully slow, but that is not representative for Java apps in general. E.g. look at HSQLDB that is will be the database of the next version of OpenOffice in most cases it is 5-10 times faster than SQL server. And is in fact one of the fastest relational databases you can get.

      So prhaps you should rephrase to Oracle is slow, rather than Java is slow.

      If you are considering J2EE vs .Net then you start your application and than it just runs and runs (well perhaps not .nat). The startup time will be very small compared to the total time the application runs. Once Java is up and running it will not run any slower than C++, apart from mathematical trigonometry functions that seam to be misdesigned somehow in JDK 1.5. However I doubt that helthcare services will use these functions much.

      Speaking of slow. Have you ever seen Microsoft showing you any real performance figures from a distributed application running .net. I would be suprised if you have. The problem with .net and distributed applications is that the XML format is too verbose, unless you invest in really fast networking infrastrukture .Net is best on applications that can run on one single machine.

      One other thing to consider is what platforms is used. .Net runs only on Microsoft and nothing else. Well, there is mono, but its not 100% compaitble yet, and I doubt that it ever will, due to potential patent problems. Using Microsoft for mission critical servers is perhaps not the best choise for security as well as stability reasons.

      A helthcare system will contain a lot of sensitive information and should really be run on a secure OS. Trusted Solaris, or some Linux with SELinux Mandatory Access control enabled comes to mind. You could raise the security in Windows as well by introduceing DRM servers, but this introduces single point of failure.

      Last you have to consider the service you can get from your system provider. If you contact Microsoft support they will tell you to upgrade to the latest version of everythign before they even make a real effort solve your problem. They normally refuse to confirm that there are bugs in their software. Its almost like Microsoft employees are forbidden to mention it. They even have had to invent the word servicepack as euphemism for bug fix.

      The most important thing to a Microsoft support person is that you have a valid licence, the second most important thing is that you have upgraded to the latest version, the third most important thing is that it is not their fault.
      And last to actually help you with your problem
      To support organization of e.g. IBM, Sun, the most important thing is to help you, and then fix other stuff if necessary.

      --
      God is REAL! Unless explicitly declared INTEGER
    35. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      Depends on what you mean by well-written. If you mean hand-unrolled loops, writing the same algorithm from scratch for each data type, reimplementing the datatypes for each use; then yes, you could say that C is faster than C++.

      But then again, C++ does these things for you....

    36. Re:ARGH!!!!!! by unoengborg · · Score: 1

      "Second problem: A programmer who uses Java 90% of the time simply will not have the skills to write efficient C or C++, although they will probably know techniques to make the most efficient possible Java."

      This is a common missconception made by many skilled C/C++ programmers. Experieced C++ programmers writing java on the side, is the problem in many slow java programs.

      --
      God is REAL! Unless explicitly declared INTEGER
    37. Re:ARGH!!!!!! by unoengborg · · Score: 1

      Nowdays, java have templates as well. But both in C++ and in Java this is mostly something that speeds the code writing rather than the execution

      --
      God is REAL! Unless explicitly declared INTEGER
    38. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      Java templates are a joke, and it's not even funny. The only thing that Java Generics buy you is some more compile-time type safety checks, in all other respects they are syntactic sugar. The actual JIT compiler cannot take advantage of the templating information because that information has been stripped away and no longer exists in the classfile in an useable form. Effective performance difference is about minus zero.

      C++ templates on the other hand can be super-opimized because the compiler knows the exact types of the participants and can inline aggresively.

      Hell, and I don't even like C++...

    39. Re:ARGH!!!!!! by TekPolitik · · Score: 1
      Experieced C++ programmers writing java on the side, is the problem in many slow java programs

      You are of course referring to knowledge rather than skills. Knowledge of the libraries is a very different thing to mastery of skills and techniques.

      A good C or C++ programmer has skills in memory management and knowledge of low-level stuff that Java insulates the programmer from. Because the Java programmer is insulated from these things, they simply do not acquire the skills (techniques) that are necessary to produce good C and C++ code. These things don't matter much in interactive code, but for high performance with large amounts of data and intensive processing requirements, they are essential.

      If you take a Java application that is running into memory problems, the typical Java programmer response is "add more memory", because they don't really know how to manage memory better, and because there are some overheads of the JVM's memory management structure that really limit the ability of the programmer to manage memory better (absent a strategy of taking things low-level with large byte arrays, at which point it ceases looking much like Java).

      But adding more memory only gets you as far as the address space limit on whatever platform you are using. If you need higher capacity, you need to go for something that is closer to the hardware, like C and C++. Quite simply, you can fit more within the available resources.

      If you can't produce an application with very large data and processing requirements in C or C++ that exceeds the performance of its Java counterpart, it is only because you don't have the skills to do so.

    40. Re:ARGH!!!!!! by opello · · Score: 1

      With the long list of potential arguments with this post, all I can say is that nobody said you had to use XML to do your message passing, there's always RPC or just use a custom protocol.

      Regarding mono and patent issues with their version of the .Net framework? What issues? wxWindows buttons look like windows widget set, as do many other graphical toolkits.

    41. Re:ARGH!!!!!! by opello · · Score: 1

      Not to fuel the war, but when you code for the general case (templates) you aren't as fast as your hand optimized, coded for each data type algorithm. This is a simple fact.

    42. Re:ARGH!!!!!! by Ohreally_factor · · Score: 1

      I don't want to start a holy war here, but what is the deal with you Java fanatics? I've been sitting here at my freelance gig in front of a SDK for about 20 minutes now while it attempts to port a helloworld program from J2EE to J2ME. 20 minutes. At home, using Visual Basic, which by all standards should be a lot slower than Java, the same operation would take about 2 minutes. If that.

      In addition, during this file transfer, Firefox will not work. And everything else has ground to a halt. Even emacs is straining to keep up as I type this.

      I won't bore you with the laundry list of other problems that I've encountered while working on Java, but suffice it to say there have been many, not the least of which is I've never seen a Java compiler that has run faster than its .NET counterpart, despite Java's faster OO development model. My ancient Hello World Hypercard stack runs faster at times. From a productivity standpoint, I don't get how people can claim that Java is a superior language.

      Java addicts, flame me if you'd like, but I'd rather hear some intelligent reasons why anyone would choose to use Java over other faster, cheaper, more stable languages.

      --
      It's not offtopic, dumbass. It's orthogonal.
    43. Re:ARGH!!!!!! by GuyWithLag · · Score: 1

      Templates benefit a lot from the inlining that most compilers do, as template functions are ususally inlined in their invocation. for example, if you use a sort with a function as a template parameter, that function (if visible) will become inlined in the sorting function thus eliminating call overhead. These sorts of optimizations are not available in plain C, unless you write them yourself...

      In any case, the object code is on the same architecture, so there is only so fast it can get ....

    44. Re:ARGH!!!!!! by lack1uster · · Score: 0

      Indeed. Furthermore, unless I'm grossly mistaken, templates are little more than pre-compiler macros, so why the hell would you get a speedup out of that? Come to think of it, what is parents parent rationale behind C++ templates outperforming C? Or any language construct having such optimal qualities so as to wholly outperform another language?

    45. Re:ARGH!!!!!! by bunglebungle · · Score: 1

      You are missing the point. Java JIT actually compiles the bytecode to native instructions. Also, since it does this after the code is running, it can optimize the compilation based on usage history and other runtime patterns, something that is not possible at compile time with C. With server apps, which handle a lot of repetive requests, this is very beneficial.

      If you are saying C apps are faster because the OS is written is C also, then I don't know if that's a factor, either. Most of the standard Java libraries are written in Java, but the jvm.dll I believe is written in C.

    46. Re:ARGH!!!!!! by unoengborg · · Score: 1


      With the long list of potential arguments with this post, all I can say is that nobody said you had to use XML to do your message passing, there's always RPC or just use a custom protocol.


      You could, but your development tools advantages of the .net platform would be gone. If you want to do that type of development you will find better tools on the Java side.

      What patent issue, you ask. And so does Miguel Icazza at Novell, but so far Microsoft gives no promises regarding all the .net stuff not covered by the ECMA standards. This gives some reason for causion.

      Besides looking the same is not good enough, to make crossplatform development possible you would need the same API calls. Or are you suggesting that Gtk, wxWindows and others should beat Microsoft at their own platform, so that mono became the defacto standard for web service development. Somehow I don't think that will happen.

      --
      God is REAL! Unless explicitly declared INTEGER
    47. Re:ARGH!!!!!! by cakoose · · Score: 1
      Not to fuel the war, but when you code for the general case (templates) you aren't as fast as your hand optimized, coded for each data type algorithm. This is a simple fact.

      This is true, but irrelevant.

      First of all, you can do hand-optimized stuff in C++ as well. However, you usually don't want to waste manpower doing that. Normally, you'd like to program generically. Generic C++ algorithms and data structures are faster than generic C algorithms and data structures (and type-safe, as well).

    48. Re:ARGH!!!!!! by Anonymous Coward · · Score: 0

      Dude you program in VB....
      Java addicts don't need to say anything, you've said it for them.

    49. Re:ARGH!!!!!! by bladesjester · · Score: 1

      Why bother using it for client side? Because for some tasks it is the right tool for the job.

      Languages are tools. They aren't religions. Use a hammer on all of your problems and the only ones you will deal with effectively will be nails (or creating things out of red hot metal, but I digress).

      C/C++ are nice because they are closer to the metal.

      Java is nice because there's so much crap I don't have to worry about and it will run pretty much anywhere as long as I don't have to deal with things that take a boatload of memory.

      Perl is great for automating stuff on my *nix boxes.

      This list could go on for quite a while.

      If you're REALLY worried about speed, stop bitching and write in assembly.

      --
      Everything I need to know I learned by killing smart people and eating their brains.
    50. Re:ARGH!!!!!! by ahdeoz · · Score: 1

      Java isn't slow, my computer is slow when it runs java applications.

    51. Re:ARGH!!!!!! by ahdeoz · · Score: 1

      Java is nice because it is easy to use so there are a lot of open source libraries. But as a result of the way java is designed, things like PDF viewers or data entry forms or servlets take a boatload of memory and run slow.

  4. MS healthcare case studies by Anonymous Coward · · Score: 1, Interesting

    are here. Read for yourself and draw your own conclusions

    1. Re:MS healthcare case studies by Anonymous Coward · · Score: 0

      Would you really advise making decisions about whether or not to use a company's product based on the company's own case studies? Which happen to be displayed as marketing on the web as the only reference you provide to make his own decision.

    2. Re:MS healthcare case studies by deaddrunk · · Score: 1

      Because that is a wholly unbiased source of course....

      --
      Does a Christian soccer team even need a goalkeeper?
  5. something that needs lots of attention by Anonymous Coward · · Score: 0

    Like say Windows. That way they can't so easily outsource the jobs to some foreign country, thereby depriving some network admins of jobs (and thus unable to afford healthcare).

    1. Re:something that needs lots of attention by Anonymous Coward · · Score: 0

      Thereby increasing their overall costs and making them increase their prices so that some other people unable to afford healthcare. Dur.

  6. mono by Anonymous Coward · · Score: 0

    Mono? go-mono.org

    1. Re:mono by dolmen.fr · · Score: 1

      ... which is a redirect to http://www.mono-project.com/about/index.html.

  7. oh no not ms by Anonymous Coward · · Score: 0

    ms is a disease of the nervous system.
    try php and mysql for a good result.

    1. Re:oh no not ms by Anonymous Coward · · Score: 0

      Mysql for a serious application!? You must be kidding!

    2. Re:oh no not ms by ciw42 · · Score: 1

      So you're a MS-SQL guy then?

      MySQL is a perfectly good database in terms of performance and core features. There are plenty of industrial strength applications which make use of it, and for most purposes, the "missing" features are of very little relevance.

      PHP however, whilst a good choice for internet/intranet development is far from appropriate for realtime user interfaces, which is presumably what is required here. It's grown up to be a very powerful embedded language for web-based applications, but has little or no use beyond this remit. Even with the GTK bindings, you're still trying to get a sqaure peg into a round hole - it might be possible, but it won't be easy and the results won't be pretty.

    3. Re:oh no not ms by Anonymous Coward · · Score: 1, Insightful

      Yeah, like I want my medical records stored in a database that is touted for its supposed speed, not for meeting the requirements of ACID transactions.

    4. Re:oh no not ms by jbplou · · Score: 1

      MySQL is a good database for small web apps. But it can't compare with Oracle or even lowly MS-SQL. It still lacks and triggers, I'd imagine that a lot of logging needs to be done for a health care app. A trigger in the database would seem to be important for this case. Secondly I'm gonna catch flak for this MS-SQL scales better than MySQL. MySQL will be there one day but its not quite there.

    5. Re:oh no not ms by Anonymous Coward · · Score: 0

      Sure pal, use MySQL. No support for subqueries, stored procedures, cursors or views... yeah... that sounds like an enterprise database solution to me.

    6. Re:oh no not ms by Anonymous Coward · · Score: 0

      That's a senior guy opinion? Have you ever written a corporate application? Don't think so.

    7. Re:oh no not ms by Anonymous Coward · · Score: 0
      Thanks for playing but basic trigger functionality is pretty much available in MySql 5.0.2 onwards

      http://dev.mysql.com/doc/mysql/en/CREATE_TRIGGER.h tml

    8. Re:oh no not ms by Anonymous Coward · · Score: 0

      In MySql 5.0.2 and onwards? Are you referring to the same MySQL Alpha release? You want to build towards an alpha product? For a system that's involved in healthcare, even?

      Are you out of your damn mind?

    9. Re:oh no not ms by hendridm · · Score: 1

      MySQL+InnoDB does ACID.

    10. Re:oh no not ms by GuyWithLag · · Score: 1

      Oh please.... it's an ugly hack bolted onto the database, and the stitches are showing. MySQL is the Access of Linux.

    11. Re:oh no not ms by grv575 · · Score: 1

      Thew VEIWS creation is plenty buggy. I wouldn't install 5.0 just yet

  8. You can't win.... by Anonymous Coward · · Score: 5, Insightful

    Because it simply doesn't matter.

    Either your client dictates the technology or he doesn't. The "Healthcare Industry" is a vast array of mixed technologies, so it doesn't matter that way. And if they're buying your solution, they're buying your SOLUTION (which typically involves hardware), so THAT'S not important.

    Go with what you know, go with what you're comfortable with. The success or failure of your project will have nothing to do with this decision, just in how you pull it off.

    You can find all sorts of excuses to fail in either platform, and you can find just as many reasons to succeed. Pick one, don't second guess yourself, and stick to it.

    Good Luck!

    1. Re:You can't win.... by Anonymous Coward · · Score: 1, Interesting

      I've gotta say this... with J2EE, you just need java installed.
      With .net, you usually end up needing all kinds of extra MS stuff installed, and it becomes a freakin nightmare if you have lazy coders who require IIS and god knows what else to be installed in order to use their .net objects.

    2. Re:You can't win.... by spasmatik · · Score: 1

      you are full of crap. Whats all this extra MS stuff you need to install? Please do fill us in.

    3. Re:You can't win.... by Anonymous Coward · · Score: 1, Interesting

      .net is a framework, not everything you need.
      If you want to use objects to make your coding time quicker, you can use parts of VisualBasic, IIS, Windows native stuff, Visio, Office stuff, etc. Problem is, you have to have it installed if your .net program uses the objects from it (obviously). Beyond that, you have to have the correct versions installed too.

      Some of our stuff uses .net (1.1 just got approved), Visio, IIS, and several of our own products to be installed just to work. When it works, it works great. When it doesn't, you get to find a needle in a haystack to find out what's missing.

    4. Re:You can't win.... by Anonymous Coward · · Score: 1, Interesting

      Oh ya, I forgot about Office and SQL Server. Also, SQL Server and IIS have to be actually running (or so I was told) as well for our stuff to work. I'm sure i'm looking over some stuff too. So lets see... that's 2 servers and 5 software packages just to run one .net program?

      .net is GREAT when it's uses responsibly, but can be horrible if it's not. Just make sure your coders can also code in non-MS languages and you should be fine. If all they know is VisualBasic and .net, you are in for a ride.

    5. Re:You can't win.... by Anonymous Coward · · Score: 0

      Oh man this post is a train wreck!

      does j2ee come with a database built in, how about a web server.... please list the out of the box items that exist that are extra in .net Educate some of us foo.

      WTF do you mean by lazy coders that need IIS?! What is lazy about building a web based application?

      I have a feeling you are nothing more than a network admin with a few script kiddie abilities.

      the install for .net has all that a .net application needs for .net objects to run. ignorant foo. If you are infact a programmer you need to wise up and learn that you may be using some poor third party applications... care to list them?

    6. Re:You can't win.... by Anonymous Coward · · Score: 0

      .net is not the problem... sounds like you have some piss poor programmers.. ha ha.. sucks to be you...

      do not EVER compare VB 6 or less to .NET.... CrapBasic as it once was does not exist anymore..

    7. Re:You can't win.... by fitten · · Score: 2, Insightful

      Yeah... unlike needing jboss, apache, struts, mysql, and who knows what all else with their configuration and manuals either practically non-existant or might as well have been written in Klingon.

      Stupid programmers can do stupid things regardless of the platform and choice of language. Good programmers can do good things regardless of platform and choice of language.

      As far as the OP, I agree with others who say you will be able to choose the whole platform (hardware and software). If you are entering a market and writing a new product, hopefully you've already done some research and lined up some potential buyers. See what your immediate potential customers are using. That should give you some idea on where to start. Don't ignore their infrastructure either, though. If they are running Windows98 on Pentium II machines connected by 10Mb 10Base2, well, that may guide how you approach the problem.

    8. Re:You can't win.... by Lucas+Membrane · · Score: 1
      I'll believe it. I've seen the inside of a big ($500 million or so of annual revenue) software/systems operation that is supposedly soon releasing some .net add-ons to its vintage core products -- stuff that targets businesses about the same size as those the original poster probably aims at. They can't keep the .net kludge running on the machines in their development shop two days straight because of some unknown number of needles in some undetermined number of haystacks. How the thousands of customers, many of whom require close to 24x7 to keep one of America's top ten industries moving, are going to find it is a total turdshoot.

      This approach follows the new mandate of the American people: Keep breaking eggs until God makes you an omelette. Between Microsoft and the Republicans, how can you hope for anything better? IDK anything about how java compares with this, so please tell me.

    9. Re:You can't win.... by Anonymous Coward · · Score: 0

      "sounds like you have some piss poor programmers.."

      Yes. yes we do. But then again, programming is not our business... sucks to be me.

    10. Re:You can't win.... by Anonymous Coward · · Score: 1, Funny

      "Stupid programmers can do stupid things regardless of the platform and choice of language"

      And people can do stupid things regardless if you give them a rock or a bulldozer. One makes a mess much harder to clean up though ;)

    11. Re:You can't win.... by tmika · · Score: 1

      What?!

      Either you've run into the strangest .Net situations imaginable and managed to avoid the *typical* issues with a Java application, you don't know what you're talking about, or you're just plain misrepresenting.

      First off, a .Net developer who required IIS to be installed on the *client* machine would be an idiot who went well out of his way to write a ridiculous application (presuming it wasn't a server-side web application, of course).

      If you are talking about a .Net application that requires an IIS server somewhere on the net, then you are talking about web/client-server/web services applications, which is the right way to develop a large enterprise application and directly correlates to a J2EE or JSP application, which would also require setting a Java or Java/Web server.

      If that's the case, complaining about the hassle of setting up IIS is a joke. IIS runs out of the box and you can install services and applications into it with a few clicks. Ever setup Tomcat under Apache? Then deal with literally hours of ridiculous configuration to get one JSP app or web service running? It you are comparing apples to apples (server-based apps to server based apps) as far as setup concerns go, Microsoft, for its many flaws in some areas, is certainly dozens of times better than Java.

      Secondly, as far as Desktop setup goes, .Net applications don't take much or any configuration to get going on an up-to-date Windows box, and if they do, you can run the packaging/installation tools and whip up a pretty bullet proof installation tool in a few minutes. Issues with getting .Net running on a client box are nothing compared to all of the version incompatibility and circa-1982 installation hassles of the Java world.

      Plus, .Net has an increbible amount of capabilities built into it that no plain-paper Java insallation will have; so, your chance of an enterprise application requiring a bunch of extra installation and configuration hassles are dramatically higher with Java.

      Finally, I know its not your point, but the application performance issue is real. People say Java applications that are slow are the fault of the developers. Whatever. A reasonably well programmed .Net application will run great on a mediocre Windows box. Java applications from the biggest names in the industry (Oracle, IBM, Sun, Borland) run like crap on any Windows box -- slow and generally suprisingly buggy as well for commerical applications. In this case, the application is going to be running primarily on Windows boxes; so, the fact that Java applications tend to suck on Windows is a significant issue, and even if your specious claims about configuration being easier under Java (God! I can't believe people are actually making a case for that...I'm honestly laughing), even if configuration were harder, it would be worth it to have a usable application...

    12. Re:You can't win.... by innosent · · Score: 1

      Good point, VB.NET is essentially Java, with CrapBasic syntax.... Which really isn't that bad, except for the syntax.

      --
      --That's the point of being root, you can do anything you want, even if it's stupid.
    13. Re:You can't win.... by Anonymous Coward · · Score: 0

      Personally, I'd go with J2EE over .NET, for the following reasons:

      1. JDBC is a very well written and easy to use and extend set of interfaces.

      2. Both Java and .NET compile to an intermediate byte-code and run through a virtual machine, but Sun has written (in my opinion) much better JIT and optimizing compilers.

      3. Platform independence is very valuable. Even in an all windows shop, some .NET apps written for Windows98 might not run on WindowsXP

      4. (the most important, to me) Apache, TomCat, Java. et al, are FREE. Visual Studio, IIS, et al are not.

      However, based on what you've said, I might not limit my choices to just J2EE or .NET. There are other choices, such as LAMP.

      Just my $.02

    14. Re:You can't win.... by Anonymous Coward · · Score: 0

      I had to install Apache Tomcat for a J2EE war thingie at our lab recently. Have to say the documentation was quite good..

    15. Re:You can't win.... by CreatorOfSmallTruths · · Score: 1

      I'd suggest checking:
      a. tomcat
      b. jboss (or any other app.server for that matter)
      c. apache
      d. IIS security holes.
      e. how many ppl r using apache vs. IIS.
      f. SHUTTING THE FUCK UP.

      You obviously have no idea of how to develop a REAL web app, because if you would have you wouldn't have started this argument in the first place.

    16. Re:You can't win.... by seanbo · · Score: 1

      I agree. Coming from somebody who worked in I.T. at one of the largest teaching medical facilities in the US, I don't think it really matters. Go with what you know. If you have a good product, people will buy it.

    17. Re:You can't win.... by Anonymous Coward · · Score: 1, Insightful

      Go with what you know, go with what you're comfortable with.

      I get very concerned with this advice. It can be perfectly valid but it can also lead to nasty, nasty stuff.

      When I ask the question "why did you choose x over y?" (anything - language, design, paradigm, whatever) I have had people say "because that's what I know" several times, always leading to at best - ugliness, or worst - disaster.

      If the answer is "I've evaluated the options and there's not much to pick between them so we're going with what we know", that's fair enough. If it's "We're going to try doing this exactly the same way we did the last project because it was good enough last time so it's good enough this time" then it's either time to find a new job or have stern words with those responsible, depending on your location in the chain of command.

    18. Re:You can't win.... by Anonymous Coward · · Score: 1, Interesting

      Sounds like the question submitter's company doesn't have much of a clue. They should go and do some research. Actually try out the technologies you are planning to use and see what is most comfortable and appropriate.

      And you don't necessarilly have to pick one or the other. We use J2EE (with lightweight technologies like Spring, Hibernate, iBatis. no EJB's) for our server-side technology. We create web services and also right our browser-apps on that platform. We write GUI apps in .Net that consume the web services. If you did something like that, you can assign the Java supporters to the server-side and .Net supporters to the client-side. You won't necessarilly be tied to .Net, you can use anything that consumes web services.

    19. Re:You can't win.... by Anonymous Coward · · Score: 0

      Keep it. You obviously have no idea about language development. FWI, Microsoft has a huge base of R&D devoted to language development research and from a technical standpoint the runtime optimizes better than the jvm.

      It's also not hard to write a medium sized app in .net and in java and just see which UI responds better. Save the exuses till after you've tried both languages.

    20. Re:You can't win.... by ahdeoz · · Score: 1

      Sounds like you should use web clients. LAMP it is. .NET or J2EE is just not the answer hardly ever. How I wish there was a perl or PHP framework, though.

    21. Re:You can't win.... by anomalous+cohort · · Score: 2, Informative

      I work in the SouthEast now. I'm not directly envolved in software development for the medical industry but I do keep my eyes open. Most medical systems that are doing modern development have chosen J2EE over .Net and I have no clue as to why.

  9. Why are you asking us? by Jailbrekr · · Score: 3, Insightful

    Don't ask us. You know the client better than us, and should be able to determine what the best tool for the job is based on the application you are writing, as well as the environment which you are installing it in. Don't make the decision based on what everyone else is using, base it on what will work the best.

    --
    Feed the need: Digitaladdiction.net
    1. Re:Why are you asking us? by Anonymous Coward · · Score: 5, Insightful

      Right on, he's obviously lost without a clue if all he can do is trot out these lame stereotypes about the technology (duhh, .NET is insecure, J2EE is slow) as arguments without mentioning 1 word about the friggin requirements.

      Not to mention, .NET isn't insecure and J2EE isn't slow... they're both insecure and slow if your development methods are insecure and inelegant. That's like saying "should I use a hammer or a screwdriver? A hammer can smash your thumb, whereas a screwdriver can gouge your eye out..."

    2. Re:Why are you asking us? by Anonymous Coward · · Score: 1, Insightful

      The whole point of this post is to start the weekly flame war between Java and .NET; of course a professional development company wouldn't ask Slashdot (a bunch of high schoolers and network admins) what is the best development environment. This gets put on here to allow the usual anti-M$ posters to have their fun.

    3. Re:Why are you asking us? by Anonymous Coward · · Score: 1, Informative

      Don't ask us. You know the client better than us

      I couldn't agree more!!

      IMO, I've found .Net to be quicker for developing business applications. The Microsoft CLR also seems to have better performance than most JVMs I've seen.

      I'm sure there are plenty of Java developers with the opposite opinion... this is just my $0.02.

    4. Re:Why are you asking us? by Anonymous Coward · · Score: 0

      By the sounds of it the OP is making a shrink-wrapped package not for a "client"

    5. Re:Why are you asking us? by revscat · · Score: 2, Insightful
      I concur.

      I'm a Java developer for an enterprise-level J2EE shop. I happen to like Java: the rich libraries, the elegance that OO can bring, the cross platform support (we code in Windows, have Solaris and Linux for our staging environment, and deploy to Solaris.) I have no complaints about Java, and encourage its use.

      Having said that, however, ultimately a decision like this shouldn't be made on techonological grounds. I haven't used .NET, and typically cringe at anything Microsoft, but for Festivus's sake if it makes business sense for you to use MS products, then do so.

      Java will get the job done. I imagine that .NET will, as well. If this guy has currently on payroll people with experience in either one of these, then that's probably what he should go with.

    6. Re:Why are you asking us? by geekoid · · Score: 2, Insightful

      "Don't make the decision based on what everyone else is using, base it on what will work the best."

      Now if you mean to say: Use what most hospitals use, then sure.
      but many hospitals are not using whats best, just what the guy running the hospital told them to do.
      Cause he's a doctor, and as such is an expert in computer technology. Just ask him.

      Yes, I've worked with hospitals.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    7. Re:Why are you asking us? by koali · · Score: 1

      And the lesson is...

      Don't use a screwdriver for smashing your thumb, and don't use a hammer to gouge an eye. It will hurt more!

      Remember, right tool for the right job.

    8. Re:Why are you asking us? by vettemph · · Score: 1

      This guy needs to keep away from hand tools entirely.

      --
      The government which is strong enough to protect you from everything is strong enough to take everything from you.
  10. Consider PHP by levik · · Score: 0
    Firstly, I want to mention that physician's offices and hospitals are two wildly different targets, since office-based practices generally revolve around a single doctor while hospitals are huge multi-ward affairs.

    Both J2EE and .Net pretty much require you to run on a dedicated server, which carries a significant monthly cost. You may have diffuculty getting a private practicioner (with no IT staff) to commit to this. While with PHP, you can easily talk them into a shared hosting plan, and a DSL account for the office to manage things quickly (the two combined will probably run under $100 per month, and you can even make some money on referring the doctor to a webhost)

    --
    Ñ'
    1. Re:Consider PHP by Anonymous Coward · · Score: 0

      Eh, you want the patients journals (or whatever medical data) to travel over the world wilde web? Also, think about uptime, not just with the hosting provider, but with the DSL provider. You'd have to get a pro DSL connection with guaranteed uptime/redundancy/something....

    2. Re:Consider PHP by Anonymous Coward · · Score: 0

      What are you talking about?

      he never said he was developing a website, or was this supposed to be a joke?

    3. Re:Consider PHP by Anonymous Coward · · Score: 0

      Certainly not!

      PHP is perfect for designing a website or even a small web application - but this guy is talking about a potentially very large system incorperating quite a bit of client side processing - which PHP wouldn't cater for.

    4. Re:Consider PHP by EvilSS · · Score: 1

      You've never delt with the medical industry or HIPPA have you? Shared hosting with a remote web app!? The only upside would be that if they where ever audited, the auditor may just drop dead from shock.

      --
      I browse on +1 so AC's need not respond, I won't see it.
    5. Re:Consider PHP by Anonymous Coward · · Score: 0

      HIPAA not HIPPA...

    6. Re:Consider PHP by Anonymous Coward · · Score: 2, Funny

      PHP is the answer to everything, the performance penalties of parsing each run and dynamic typing are actually bonuses for medical imaging and OS kernel work.

      PHP is teh R0X0r!

    7. Re:Consider PHP by Anonymous Coward · · Score: 0

      You may want to research a bit more before posting. .NET does not require a dedicated server. There are many shared hosting environments for .net

    8. Re:Consider PHP by Anonymous Coward · · Score: 0

      This depends entirely upon the client requirements. PHP may be a good choice but it is hard to tell from the short description without any relevant application.

      There are many factors in deciding the technology to use in providing services to a client. What is the target platform? How long will this platform be used? Is there a possible change in the IT environment? (This is far from a conclusive list).

      I think that the original poster needs to provide us with some more information regarding the client's requirements and target environment before we can make an honest assessment of the technology choice or offer alternate solutions. Either that or they need to talk with their client some more.

    9. Re:Consider PHP by Anonymous Coward · · Score: 0

      YYYeess!!! I want my hospital records on a shared hosting account!

      You are a fucking rocket scientist!!

    10. Re:Consider PHP by jbplou · · Score: 1

      A .Net app could run just on the client if you are dealing with a small physicians office. .Net would be a much better choice than PHP, realistically no business is going to put an internal app on a shared host. If it is to be a webbased app running either J2EE or ASP.NET it could coexist with other apps on one server, it all depends upon users and load. For a healthcare provider which has to meet government requirements for privacy a platform with no company to back it up is fool hardy at best.

    11. Re:Consider PHP by Anonymous Coward · · Score: 0

      Isn't receiving advice from someone with absolutely no experience related to the topic a wonderful thing? No, it's not.

    12. Re:Consider PHP by isolationism · · Score: 1
      PHP probably isn't even an option (ludicrous or not). The U.S. Federal Government, for example, has mandated something about future software (for their use) having to be developed in either J2EE or .NET. I work in the eLearning industry and that's what we've been handed down from OPM, GSA, etc.

      Healthcare is probably the same, if not even more restricted. Software developed for US healthcare is pretty anal. As I understand it, every user-driven event has to be audited and signed with a key.

    13. Re:Consider PHP by Anonymous Coward · · Score: 0

      Do you have sources for this that you can post? THis sounds bizarre enough to be true, but I'd like to see a reputable public source.

    14. Re:Consider PHP by TedCheshireAcad · · Score: 1
      Sigh. Your post makes me cringe. It's HIPAA: Health Information Privacy and Accountability Act.

      Unrelated, but the project described in the article is going to fail. Here's why.

      HIPAA is a real bitch. You're going to need an attorney practically on staff to work with the developers in planning this product.

      How are you going to input existing records into the EMR suite? OCR? Hire a typist (consult your attorney again)?

      Transmitting personally identifiable health information over the internet? Great idea! HIPAA again.

      Doctors will pay for this...why? What, with doctors having to pay tons in malpractice insurance these days, they're really sticklers for cash. Really, though, doctors are really cheap.

      Integrating claims? Hope you are up to speed on HL7 and Z-Modem. HL7-XML is still in working group, and don't expect a release for at least another 5 years. Also, good luck with Medicare/Medicaid claims, really, if you can do it, let me know how.

      Going with the ASP model - well that's wonderful. What happens when the office's DSL goes down? Looks like they can't serve patients anymore. Oh well.

      Private practice and hospitals? Impressive. I sure hope you're going to integrate medical instrument interfaces to this product, or why would a hospital use it?

      Any EMR worth its weight is going to have to integrate both ICD-9-CM and CPT. If you don't know what these mean, give up now. ICD-9-CM is free, but CPT is commercial. Last time I checked, around $200 per license. Planning on distributing CPT codes within the product? Good luck with that one, too. Unless, of course, you want physicians' offices to manually input their CPT codes into the system ( all 5,000+ of them ).

      Just my short list of why you're not going to make money selling software to the medical industry.

    15. Re:Consider PHP by EvilSS · · Score: 1

      Yes yes yes. It was a typo. Christ slashdot has a excess of spelling and semantic police.

      --
      I browse on +1 so AC's need not respond, I won't see it.
    16. Re:Consider PHP by EvilSS · · Score: 1

      ARGH! It was a typo! Anyway, everything else you said is dead-on. I've done work with several large healtcare firms, as well as several medical software vendors. Compliance with HIPAA is insane. No one is ever sure what exactly has to be done, because it is so vague, but is scares the hell out of them so they get all freaked over everything. If the software package WILL interface with medical equipment, don't forget the fun of FDA certification! I've seen it done, and it's insanely complex.

      --
      I browse on +1 so AC's need not respond, I won't see it.
    17. Re:Consider PHP by Tablizer · · Score: 1

      A .Net app could run just on the client if you are dealing with a small physicians office. .Net would be a much better choice than PHP, realistically no business is going to put an internal app on a shared host.

      PHP can run on a local host also. Do you mean non-HTML-browser apps?

    18. Re:Consider PHP by Anonymous Coward · · Score: 0
      But if you were running an entire hospital PHP is multi-user and scalable, security of data comes from encrypting the fields of the database and using SSL and other methods. Server costs are lower and you don't have to have the Windows holes to contend with. You gain cross platform.

      And if you need more interactive interfacing you could also institute Python or another local interactive language that interfaces to the DB.

      To any detractors of any language, lousy examples for any language can be shown (just running .Net or PHP/Linux doesn't make you a security expert) but with good configuration and coding you see sterling examples of just about language/platform too.

    19. Re:Consider PHP by innosent · · Score: 1

      Actually, very little has to be done to maintain HIPAA compliance. Treat all information as confidential and owned by the creator, unless released to another party for review. Secure ALL communications of medical records, and make sure you understand the difference between record custodians and record owners.

      Very few insurance companies will even consider HL7 data, everyone has moved to some form of ANSI 837 transaction. Look at options like Availity (or something better, let me know if you can find something without that crappy web-based post/download claim thing) and bill Medicare/Medicaid directly.

      Doctors will not pay for this, but they WILL pay a nominal fee for monthly service, especially if bundled with Internet access, or may instead agree to a (small) percentage of paid claims. ICD-9-CM and CPT-4 are both free, provided you look in the right place. Most insurance companies will post a fee schedule, which is free to distribute, containing CPT codes and their associated modifiers. Try Medicare for a good start.

      Finally, for the original topic, it doesn't matter what language you use, but you'd better have a VERY flexible design (as everything will change about every 5 years), and be able to provide equipment legally, cheaply, and reliably. You didn't think those doctors were going to buy their own computers, did you? Believe me, Windows licenses are not something you want to deal with if you have hundreds of clients. Also, forget hospitals. Hospitals are owned by large corporations, who either contract with a large corporation for development, or have their own in-house development, they don't buy shrink-wrapped software.

      In other words, if you're doing this to make money off your practice management system, don't. There is no money, unless you get something else out of it, like exclusive contracts for other services.

      --
      --That's the point of being root, you can do anything you want, even if it's stupid.
  11. Nice troll. by Anonymous Coward · · Score: 5, Insightful

    Your project, assuming there really is one, is doomed already.

    You're asking an Internet message board for advice on a development platform? For software you're going to develop for an industry you have no experience with?

    1. Re:Nice troll. by Guido69 · · Score: 2, Interesting

      Umm...not necessarily. Sounds like a small shop, and the feds have special programs to award them contracts. We're in the same business and often serve as the prime on the contracts. Often times they are agile enough to pull off the job and turn over a good product.

      --
      - If we aren't supposed to eat animals, then why are they made out of meat? - Steven Wright
    2. Re:Nice troll. by dejaniv · · Score: 1

      Your project, assuming there really is one, is doomed already. You're asking an Internet message board for advice on a development platform? For software you're going to develop for an industry you have no experience with?

      So what you're saying is that the market is already divided and there is no reason bothering trying to win over a peace of it? How on earth did those companies who make software for medical industry know how to do it in the first place? I guess they found people who were born with the knowledge?

      Besides, there are tons of experiences that you can learn from if you want to compete in any area of IT business. If you got yourself a start (client or financial support for development), then I say you should GO FOR IT! It's not over yet! IT'S NEVER OVER! We shell fight on the sea, we shell... Ok, let's not go nuts.

    3. Re:Nice troll. by rrobles · · Score: 1

      The same nature of the IT industry, the rate of generation of new technologies or just new packaging of old and proven technologies (reducing cost, improving performance, etc.), lowers the bar for newcomers to enter in the game and if they do the right things right they have a chance of getting their 15 minutes of fame (or profit) until the next wave of newcomers take the thunder from them after they fell in the complacency of their 'comfort' zone.

      Check the IT horizon of technologies and promising companies, you'll see that the companies that today are ripe to grab a piece of an existing market or probably create new markets didn't show up in the radar few years ago.

      That has been the case in the last years.

  12. ramp corp by Anonymous Coward · · Score: 1, Interesting

    http://www.ramp.com

    Why write your own when it's cheaper to use an established product?

    Ramp corp's software is more feature packed then your 11 person team could do in a couple years of work, it's supported, and you don't need to write code in either of those two crappy standards you suggested.

  13. Neither by Anonymous Coward · · Score: 0, Interesting

    Unless you have a large body of code already written, scripting languages are a much better alternative. Your development effort will be much simpler, will proceed a lot faster, and should also cost less in software licenses, etc.

    My favorite scripting language is Python, which has a very clean syntax -- no problem for any Java or C# programmer to utilize fully in under a week. There are other choices, however, such as Perl and Ruby.

    If you need to create third party interfaces, use an open standard such as Web Services. J2EE and .NET applications should then have little trouble communicating with your system.

    1. Re:Neither by ciw42 · · Score: 2, Interesting

      I'd second that. I've been using Python exclusively for the past year or more in commercial projects, and quite a bit on and off prior to that personally.

      Combined with a good GUI toolkit (wxWidgets or for certain applications GTK+ and the wonderful Glade) and with a good database back-end (MySQL on the server and possibly SQLite for local data) you really can do pretty much anything very quickly and effectively. There are even some great free development tools (like DrPython) which are a joy to use.

      You get to target GNU/Linux, Windows and Mac OSX with essentially the same source, and installing the Python and related runtimes is no more hassle than installing the .NET or Java runtimes. If deployment is a major issue, then it's simple enough to create and ship a single executable.

      I've used it for developing everything from Point-of-Sale systems to document imaging and retrieval to accounting systems. There are quick applications for feeding data from legacy systems into new systems, batch processing of large amounts of data, as well as some pretty major fully bespoke applications. It really has proven to be a one toolset fits all solution for me.

      Looked at and used Perl, Ruby and Lua for a while before decideding on Python. It just had that little something extra for me, and I've absolutely no regrets, but all four would bring you most of the same benefits, though you may find that Lua is lacking somewhat in add-on libraries at the moment.

    2. Re:Neither by Anonymous Coward · · Score: 0

      I'm curious: how big are these projects? Java isn't very good for small projects because of the overhead, but once you get above a certain size, it works quite well, and the largest size you might care to go could be huge. Contrarily, most of our smaller projects are done in Python, but once they get large enough, they tend to be rewritten in C++ or Java.

    3. Re:Neither by ciw42 · · Score: 1

      Some are effectively just desktop apps, but some are quite big.

      Python has never really been about speed, and for the client side code it's not important anyway, most of the time the app is just waiting for user input. A lot of the number crunching is done by the database server so all the app is doing is issuing a query, albeit often quite a complex one, and waiting for the results.

      There are obviously major productivity benefits to programming in Python (and scripting languages in general) but you trade performance for these. There have been a couple of times when I've approached a large new project and half expected to end up recoding sections in C++, but for all the projects so far, the pure Python versions have performed as well if not better than the client had expected anyway, even on older hardware. The core libraries and many of the popular extensions are written in C++ these days, and those that aren't and become popular tend to be re-written before long as well.

      I've personally found that Python scales as well as Java ever did, but then I've not really written anything in Java during the past two years, and performance etc. may have improved to the extent that the difference is now significant.

  14. Are you kidding? by Anonymous Coward · · Score: 0

    Do you really think you'll get a fair analysis from this crowd?

  15. Wrong question... by Anonymous Coward · · Score: 0

    I've used J2EE for healthcare but in general i believe that in a critical system, you may want to use the platform you are better familiar with and do it right ;-)

  16. Ramp software SUCKS!!! by Anonymous Coward · · Score: 0

    it's a prime example of how the healthcare industry needs better software!

    1. Re:Ramp software SUCKS!!! by Anonymous Coward · · Score: 0

      Care to elaborate, or are you just a troll? There software is fully featured, HIPAA compliant, and works with those cool portable devices they sell. What's the problem with it? And how is an 11 person team going to beat there software in any reasonable amount of time?

    2. Re:Ramp software SUCKS!!! by Anonymous Coward · · Score: 0

      And how is an 11 person team going to beat there software in any reasonable amount of time?

      That's fairly easy: by building software that actually WORKS! And by looking at what the customers really need vs. running on "cool portable devices"

  17. I use C# & not Java because of uint from C &am by Anonymous Coward · · Score: 0

    G(

  18. .NET by Anonymous Coward · · Score: 0

    I've developed in both languages for years and the assumption that most medical facilities run Windows is correct (dentists too).

    I think that saying one is better than the other is a sure sign of someone who doesn't know the other language and I feel that you can make as good a product in either language, depending on which language you know better.

  19. RMI by sugarmotor · · Score: 1

    How about RMI?

    My company runs J2EE but RMI would have been just fine and much easier in a lot of ways. The customer wanted J2EE, of course. Your's doesn't seem to mind.

    Since you don't have a preference through your history, I'd recommend using Java. I always found looking for support about Microsoft software to be a nightmare. On the other hand, with Java there's lots of brilliant advice to be found.

    Stephan

    --
    http://stephan.sugarmotor.org
    1. Re:RMI by jbplou · · Score: 1

      Have you tried google, there are only thousands of websites dedicated to Windows Server Administration and .Net programming. What about books... whats this 4,944 books found in an Amazon search on .Net. They are comparable platforms but don't make up stuff to say one is better than the other.

    2. Re:RMI by sugarmotor · · Score: 1

      Of course there is information about Windows stuff available. However, reading it has often been a pain for me; in the Microsoft world I often felt the author does not want to explain, but is circumventing some hidden obstacles which keep them from giving the necessary background -- or are just not able to explain, straightforwardly. Have to go Stephan

      --
      http://stephan.sugarmotor.org
    3. Re:RMI by clard11 · · Score: 1

      RMI is somewhat limited, for example
      - The server application must be written in java
      - No object activation policies

      RMI/IIOP (as implemented by WebSphere amongst others) at least gives you language neutrality.

      --
      catch (ModDownException mde) {post.modUp("Interesting")}
  20. Either a troll or a REALLY clueless person by Anonymous Coward · · Score: 5, Funny

    you want to develop for a new vertical industry that you're not familiar with, you're not sure about your dev platform and you came to /. seeking objective analysis on a platform involving MS?? Well, you certainly deserve all the "PHP rocks!" and "11 lines of Perl are all u need" answers you'll be getting...

    1. Re:Either a troll or a REALLY clueless person by roman_mir · · Score: 1

      11 lines? You, kids, in my time we had no lines. And we couldn't use fancy numbers like 11. And if we had to program in Perl all we had was a cammel!

    2. Re:Either a troll or a REALLY clueless person by TWX · · Score: 1

      "Well, you certainly deserve all the `PHP rocks!' and `11 lines of Perl are all u need' answers you'll be getting..."

      At least people won't be constantly telling him how powerful Visual Basic is for this, or recommend that he set up an Access database to store the information...

      --
      Do not look into laser with remaining eye.
    3. Re:Either a troll or a REALLY clueless person by ad0gg · · Score: 1

      My old CTO used to talk about getting 1 compile day. And his favorite line after that was "You better hope you don't have any syntax errors".

      --

      Have you ever been to a turkish prison?

    4. Re:Either a troll or a REALLY clueless person by /dev/trash · · Score: 1

      Dude. Python is where its at!

    5. Re:Either a troll or a REALLY clueless person by Anonymous Coward · · Score: 0

      What a dumb comment.

      I can't even imagine the intellect that some people here have. I'm certain that many readers and posters have expericence far beyond what you or I will ever have.

      Yeah, there will be some stupid comments, but there will also be some good ones - in fact, there already are.

      If the guy got one good suggestion that he can take back to his Manager, great. It didn't cost him a cent.

      You, on the other hand, I'm sure, would assume you know everying, and never ask anyone for an opionion at all, after all, you are far too bright for that....

      I've had managers working for me just like you. They didn't last long.

      You are a moron.

  21. Who are you? by Anonymous Coward · · Score: 0

    Sounds like IT should be making the recommendation based on what their staff will be most effect with.

  22. Think of Security by Anonymous Coward · · Score: 5, Interesting

    Any program written for the medical industry that involves capturing patient data is required to be secure. Read up on HIPPA (http://cms.gov/regulations/hipaa/cms0003-5/0049f- econ-ofr-2-12-03.pdf) before making a decision. The company I work for creates software for the medical industry and we chose J2EE for the security and relatively low barrier to entry using open source application servers and tools.

    1. Re:Think of Security by Anonymous Coward · · Score: 0

      And if your company is either Lawson or Cerner, there is a special circle in Hades reserved just for you.

    2. Re:Think of Security by Anonymous Coward · · Score: 0

      HIPAA
      HIPAA
      HIPAA
      It's HIPAA
      Really HIPAA
      Seriously HIPAA
      HIPAA
      HIPAA
      HIPAA
      You think maybe it's HIPAA

      http://www.cms.hhs.gov/hipaa/
      http://aspe.hhs.g ov/admnsimp/pl104191.htm

    3. Re:Think of Security by Anonymous Coward · · Score: 0

      i call idiot on you. HIPAA. not HIPPA. douche bag.

    4. Re:Think of Security by emc · · Score: 3, Funny

      40 times on the chalkboard

      HIPAA not HIPPA
      HIPAA not HIPPA ...
      HIPAA not HIPPA

    5. Re:Think of Security by Guido69 · · Score: 0

      And for that matter look at some of the programming standards documents that CMS has recently published. If you're contracting for them, and I bet you are, you'll find that they are expecting a Java based solution.

      --
      - If we aren't supposed to eat animals, then why are they made out of meat? - Steven Wright
    6. Re:Think of Security by Anonymous Coward · · Score: 1, Interesting

      HIPAA's a funny thing. Our HIPAA-compliance officer got fired after a few months and never replaced. As a programmer, I read more about it than anybody else in the complex ... it's sad that most of the doctors and nurses think that HIPAA's all about passwords; they ignore all the bits about not talking about patients on the phone or with doors open where other people could hear, they ask us to make the software secure yet leave their terminals wide open (automatically locking the console still leaves a window of opportunity) and they'll distribute medical information without really checking on who's getting what and why ... It doesn't matter how much you encrypt the data -- you're not likely to have an attack directly against your software/server. What -is- likely is for some nurse somewhere to say something he shouldn't and get someone in trouble, assuming the patient ever finds out and cares enough. And then? There's a $250 fine per event at most, because the government wants to focus on helping you get better rather than punishing you. No real teeth, and nobody's got a clue anyway -- it's much easier for them all to think that as long as the programmers know about HIPAA, they don't have to. That's not to say you shouldn't make systems secure -- but there's a lot of other stuff to be done that's more important on a practical level.

    7. Re:Think of Security by tbannist · · Score: 1

      IIRC, isn't Windows XP not HIPAA compliant?
      (EULA gives MS right to read and change sensitive information)

      Doesn't that mean that .Net would be crippled by having to be run on Windows 2k or earlier O/S?

      --
      Fanatically anti-fanatical
    8. Re:Think of Security by Anonymous Coward · · Score: 0

      That was a typo you c0ck sucker.

    9. Re:Think of Security by discogravy · · Score: 1

      This is a big concern, but something else that the poster might want to consider is that a lot of hospitals/health care facilities still use a lot of big iron mainframes for a lot of their patient records -- I've run across Solaris, HP-UX, SCO, AIX, IRIX and various flavors of GNU/Linux (predominantly Red Hat Linux) in the health care industry (often in the same facility.) I'd recommend Java for the portability, although if time if of the essense, I suppose they could bang it out in .NET and then try to rewrite it if they ever needed to (but that's ... not optimal.)

    10. Re:Think of Security by Anonymous Coward · · Score: 0

      Windows XP has a 'exemption' as far as HIPAA
      (and the EULA) is/are concerned. I think Microsoft has to conform to HIPAA in this regard (The EULA doesn't exempt M$ from following federal law.)

  23. J2EE hands down by mfearby · · Score: 0, Flamebait

    I haven't done much with .NET but I can tell you that J2EE will have a longer life than .NET - the last thing you need is Microsoft changing their APIs yet again to some god-forsaken, bloated, filth. I don't imagine that every healthcare installation uses Microsoft platforms everywhere, either. You're likely to encounter free-thinking IT managers with Linux in various, critical, places where .NET won't cut the mustard. And don't any of you retort with Mono, either. Mono is a curse on FOSS and should be treated with the contempt it deserves!

    1. Re:J2EE hands down by Anonymous Coward · · Score: 0

      no wonder you're just a simple programmer...

    2. Re:J2EE hands down by Anonymous Coward · · Score: 0

      J2EE will have a longer life than .NET - the last thing you need is Microsoft changing their APIs yet again

      Do you mean to imply that Sun perhaps don't change the Java APIs? There are so many depreciated methods it's silly!

    3. Re:J2EE hands down by Anonymous Coward · · Score: 5, Insightful

      MS has pretty much bet the bank on .Net, so even if windows loses market share I can't see it going anywhere anytime soon.

      I use .Net at work (not out of choice) and I must say that I've been pleasently surprised. Ethical grandstanding aside, VS.Net is a very good IDE and C# is a particularly nice language. IMHO, easier to use than Java.

      I still agree with your cocclusion though - depending on the current skill level of the deveopers of course, I think Java is the better option. Both platforms are pretty similar, but with Java you get (better, complete) portability.

      Ben

    4. Re:J2EE hands down by doormat · · Score: 1

      he last thing you need is Microsoft changing their APIs yet again to some god-forsaken, bloated, filth.

      Whats to keep Sun from doing the same thing?

      --
      The Doormat

      If you're not outraged, then you're not paying attention.
    5. Re:J2EE hands down by Anonymous Coward · · Score: 0

      The opprobrium ( sp ? but forget it - it's sloshdat ) of the OS developers' community, which Sun is courting and MS is, at their peril, ignoring.

    6. Re:J2EE hands down by Anonymous Coward · · Score: 0

      Spoken like the clueless fuck that you are.

    7. Re:J2EE hands down by mfearby · · Score: 1

      At least I have the courage to publicly stand by my point of view, as opposed to yourself... too gutless to express an opinion using your own name. Artard!

    8. Re:J2EE hands down by Anonymous Coward · · Score: 0

      .NET is only good enough for the London Stock Exchange :O

    9. Re:J2EE hands down by Anonymous Coward · · Score: 0

      Sometimes I wish they'd be just depreciated. I needed to write an appplication at a previous employer to talk to an event server via CORBA and the only supported language was Java. I downloaded the latest JDK from Sun and attempted to compile the code provided and found that half of the CORBA libs in Java was completely changed. I had to download the very specific JRK that the original sample was written for and compile using that.

      Of course even then it didn't work, but I chalk that up to either CORBA or Java being crap, but that's my biased opinion.

    10. Re:J2EE hands down by Anonymous Coward · · Score: 0

      Look, loser: you're nothing more than a simpleton web developer -- not a real developer.

      If you want to stand up and wave that itty-bitty CV of yours and offer opinions about things you know absolutely nothing about ... then you're going to get flamed.

    11. Re:J2EE hands down by killjoe · · Score: 1

      .NET is already being phased out. When longhorn comes out it's all new stuff. Of course .NET will be supported but it will have no buzz and all the developers will be encouraged to abandon it.

      --
      evil is as evil does
    12. Re:J2EE hands down by LiENUS · · Score: 1

      You do realize .Net is the replacement for Pe executables for longhorn don't you? the only thing being phased out is System.Windows.Forms, and its being replaced with avalon. However System.Windows.Forms will continue to be supported for quite some time.

    13. Re:J2EE hands down by Anonymous Coward · · Score: 0
      Whats to keep Sun from doing the same thing?


      Sun can't afford to. They also don't have a history of it. MS on the other not only has a history of it, they have a history of trying to change Java to their own bloated filth.

    14. Re:J2EE hands down by Anonymous Coward · · Score: 0

      Avalon and Indigo (the 'new stuff' you refer to..) are both platforms designed to be run from managed code (i.e. the .Net framework.) .Net is not going away for at least a decade, it is here to stay (well as long as Microsoft is around).

    15. Re:J2EE hands down by innosent · · Score: 1

      Great, so memory management in future versions of Windows will be WORSE? You'd be surprised how adding a simple string to a string can eat memory (I've reached 400MB for a test case constructing about a 300KB string, it's actually faster by several orders of magnitude to write to disk than append to a string), and how long it takes for it to be GC'd.

      --
      --That's the point of being root, you can do anything you want, even if it's stupid.
    16. Re:J2EE hands down by Anonymous Coward · · Score: 0

      System.Text.StringBuilder is your friend.

    17. Re:J2EE hands down by sosume · · Score: 1

      I agree but

      Both platforms are pretty similar, but with Java you get (better, complete) portability.

      in my experience .NET is way more portable than java..... I can compile a dll on my windows b0x and run it straight on my openBSD b0x, my iPaq or even a cellphone. try that with java and the 'java enabled' machines which actually run a crippled vm.

      And ofcourse I like the delegates and pointers that .NET has provided!

    18. Re:J2EE hands down by jrumney · · Score: 1
      in my experience .NET is way more portable than java..... I can compile a dll on my windows b0x and run it straight on my openBSD b0x, my iPaq or even a cellphone. try that with java and the 'java enabled' machines which actually run a crippled vm.

      You sir, are full of shit. The .NET Compact Framework VMs are just as crippled as a J2ME VM, and will not run a Desktop targeted DLL or EXE. There are no differences between Java and .NET as far as Desktop vs PDA/phone devices, other than Java being available for far more platforms than .NET, and having been around longer there are more versions of Java, hence backwards compatibility problems.

    19. Re:J2EE hands down by aaronl · · Score: 1

      Also you shouldn't leave out that .NET is immature, and has much higher system requirements than Java. Plus, when you develop an application for Java, at the very least it works across Sun's VMs, if not all vendors' Java VMs (as is often the case). .NET? No, sorry, you wanted a user interface. Can't forget how willing MS has been to port the .NET system to things that aren't Windows, as well.

      I don't like Java all that much, but most of my objections have been fixed over the years. .NET created all of them over again, and added a couple more:
      -Small installed base with the .NET software
      -.NET CLR is very large to download
      -Very large memory requirements
      -Noticable slower than native code
      -Limited cross-platform support
      -Non-ported components
      -Windows OS has the only finished implementation
      -Lack of need for system to exist

  24. Java by Anonymous Coward · · Score: 0

    Every time I compare .NET technologies to Java technologies, I find Java superior in many subtle ways.

    I apologize for not being able to be more specific, but I suspect you'll be a lot happier with J2EE.

    1. Re:Java by bwalling · · Score: 1

      - Microsoft essentially obsoleted our entire company's code base when they introduced .Net, forcing a rewrite that will cost millions. Microsoft is infamous for churning its technology base, so they could easily do it again. Fool us once, we aren't going there again.

      VB6 still works fine, by the way. You were not forced to do a rewrite. If your code base is in VB6, and your developers know VB6, then the decision to go to .Net (or Java) seems crazy.

    2. Re:Java by tokyobill · · Score: 1

      Let's just screw the "microsoft is a patent holding monger that will some day come back and screw us" discussion, and think about things in perspective. Microsoft holds patents and Sun holds patents, I really do not see the difference in the two. I know that microsoft has the bad reputation but that is not the question at hand. Who's to say that sun could not do the same thing that microsoft could. The question is not patents and lawsuits, this is a question of which development platform would be better. Which really boils down to which is the easiest platform for you to develop with and not which platform is better for the customer. A matter of taste, so there is no real answer.

    3. Re:Java by Spiked_Three · · Score: 1

      "Microsoft essentially obsoleted our entire company's code base when they introduced .Net, forcing a rewrite that will cost millions"

      Yeah, let's go with Java because IBM supports it!! Someone who supports Java would never do anything like that *cough*banks*OS2*cough*

      "one patent infringement lawsuit from MS and it is gome (sic)"

      Yeah, like when Sun sued Microsoft over Java and now MIcrosoft's Java is gone. Just goes to show anyone will sue anyone, there is no protection because you are not going with Microsoft.

      Why am I bother to respond, I can tell by your posting your probably a high school coder anyway.

      I don't disagree with Java as a choice, in fact I agree with it, but for reasons that make sense, not made up FUD. Stop whining "me too".

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    4. Re:Java by the+eric+conspiracy · · Score: 1


      Yeah, let's go with Java because IBM supports it!! Someone who supports Java would never do anything like that *cough*banks*OS2*cough*

      The difference is that Microsoft has formally announced retirement of VB6 support. While with OS/2 even now you can get support from IBM.

      http://www-306.ibm.com/software/os/warp/support/

      Just goes to show anyone will sue anyone, there is no protection because you are not going with Microsoft.

      The difference is that Java runtimes and sdks for platforms other than Solaris are produced by Sun itself. Is Sun going to sue itself for violating it's own patents? I don't think so.

    5. Re:Java by the+eric+conspiracy · · Score: 1

      "microsoft is a patent holding monger that will some day come back and screw us" discussion

      The issue here is Mono vs. Java and cross platform support. Sun produces JDKs for many platforms, Microsoft one. In order to develop for .Net on other platforms you must go and use an unsanctioned, unlicensed reverse-engineered platform that is not supported by any way shape or form by Microsoft, and which has been threatened in public by the CEO of Microsoft with patent infringement claims. Sun is not about to sue Sun for patent infringement - while MS has openly discussed doing the same with Mono.

      Right now Mono serves Microsoft's needs in a number of ways, most especially in the area of providing a 'see we are not a monopoly' example. Should those needs change so that Mono is undesirable Microsoft could pull the plug on Mono in a femtosecond.

    6. Re:Java by the+eric+conspiracy · · Score: 1

      You obviously have no idea how to develop code under .NET. We run a heavily loaded ecommerce site with 8 servers / 2 cpus each with absolutely no prob. Btw, this solution has replaced a legacy Java app that was running on 16 servers / 2 cpus each. .NET rocks.

      That is a ridiculous example and you know it. If you are doing a re-write of a legacy application and can't come up with AT LEAST a five-fold improvement in performance you are totally incompetant.

    7. Re:Java by kannibal_klown · · Score: 1

      As others have mentioned, you are not FORCED to rewrite your VB6 app to VB.Net. It still works and compiles.

      VB.Net is a whole other kettle of fish. It wasn't meant to be a quick import. The coding is different (object oriented), and uses different technologies. You're essentially complaining that a language and IDE based on COM and Active-X doesn't port well to a language based on the .Net framework (and has hooks for Active-X if needed). You might as well complain about the difficulties between porting back and forth between Carbon and Cocoa on the Mac.

      However, I agree with your Java arguments. .Net is nice for windows coding, but for anything cross-platform Java is nicer. Java is also more mature and rock solid.

      Java's definately the way to go. But complaining about VB6 -> VB.Net is kind of pointless.

    8. Re:Java by Anonymous Coward · · Score: 0

      Java is multiplatform, much more so than .Net (Mono is not even close to be considered - one patent infringement lawsuit from MS and it is gome). Java gives us access to just about any platform we are likely to need to deploy to.

      What the HELL are you talking about? C# is an OPEN standard, with 70%+ open to public (not optimized, but public). They're pushing for cross platform, they just don't want to do it. Do some research, do some reading, stop being a god damned sheep...

    9. Re:Java by the+eric+conspiracy · · Score: 1

      What the HELL are you talking about? C# is an OPEN standard, with 70%+ open to public

      I call bullshit. C# is a standard, but that doesn't mean it's useful in that form. Microsoft calls their product Visual C# for good reason - it is the C# language PLUS project templates, designers, property pages, code wizards, an object model, and other features of the development environment. The library for Visual C# programming is the .NET Framework.

      NONE of this is part of a standard except C# and the System library, and it is ALL part of what people use when they write C# applications.

    10. Re:Java by the+eric+conspiracy · · Score: 1

      As others have mentioned, you are not FORCED to rewrite your VB6 app to VB.Net. It still works and compiles.

      As others have said, mainstream support for VB6 ends March 2005. There is no way my clients will buy applications written in an unsupported language.

      As a result, yes we are forced to rewrite. Otherwise we are out of business.

    11. Re:Java by kaffiene · · Score: 2, Insightful

      There's a *huge* difference.

      Sun has worked for the last decade trying to ensure above anything else that Java works on as many platforms as possible.

      Microsoft have worked for their entire life as a business to ensure that software only runs on their system.

      The track record of these companies should be all the argument that people need.

    12. Re:Java by kaffiene · · Score: 1
      "one patent infringement lawsuit from MS and it is gome (sic)"

      Yeah, like when Sun sued Microsoft over Java and now MIcrosoft's Java is gone. Just goes to show anyone will sue anyone, there is no protection because you are not going with Microsoft.

      That law suit was fought to preserve the integrity of the Java language, not to kill it on Win32.

      A MS suit against Mono kills .NET on Linux.

      The Sun suit against MS preserved the ability to code portable Java on Win32

      Spot the difference?

    13. Re:Java by Spiked_Three · · Score: 1

      Nope, just a play in words in the direction you wish it to be read.
      Microsoft could easily say the same thing if they went after Mono.
      Sun sued Microsoft over Java because it took market share (mindshare) away from Sun, and they had a contract that allowed them to sue. Any other belief is fantasy. If Microsoft had not been in a special treated monopoly position, the courts would have thrown the suit out even with the contract.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    14. Re:Java by kaffiene · · Score: 1

      Bullshit. Sun was happy for MS to ship Java, they weren't happy for MS to ship a incompatible product and call it "java". In no way did it benefit Sun to have MS stop supporting Java, except insofar as it kept the language pure. Sun would have been much better off if MS HAD supported pure Java (shipping Java in Visual Studio was a huge boost)

  25. scalability by Anonymous Coward · · Score: 1, Interesting

    If the application is to be 100% client code forever, both will work and you should go with what the staff is most familiar. If your staff is equally familiar / ignorant go with J2EE to gain portability.

    If you ever want to put some of the code on servers and scale up the system to large numbers of users then J2EE is the best / only choice.

    1. Re:scalability by Anonymous Coward · · Score: 0

      Ehrm... J2EE is inherently server based. You can have a thick client that communicates with it, but you can't have a 100% client application that uses J2EE.

    2. Re:scalability by Anonymous Coward · · Score: 1, Insightful

      Very true. Our healthcare application is C and various 4GL database languages running on a Linux server with a Java front-end. Java 1.5 running XP look-and-feel looks great on Windows and performs just fine, plus we can develop on Linux and run it on Linux for the (few) clients who choose to use Linux desktops. I'd go with GDI or Java hands down. GTK is too ugly on Windows and QT just doesn't feel quite right either. Java is good because it's portable and very quick to develop, only downside is start-up time, but for client apps 1.5 is definitely the way to go.

      Don't go with J2EE or .NET just because it's hip, go with it if you really really need that kind of enterprise/middleware format. If your app is simple client/server it'll probably be easier to just do it in established languages like plain C, Java, Perl etc. Don't over-engineer your product, especially not for just a couple of clients. Maybe if it gets more popular you can afford to spend the cash on developing some superduper amazing system, but it's really easy to piss away money spending months (years!) designing something that you only ever deliver to one client.

      A lot of healthcare work is about fitting into other systems' products. HL7 is a really important standard for transferring data between medical products, but be aware that even some of the biggest names in the industry don't support it fully or may not even support it at all. Be prepared to make lots of Perl and shell script "glue" to share your data with other systems. You might need to contact Medicare and large health insurance companies to see if they need data transferred electronically and what format they want.

      Good luck!

  26. Java, of course by gsergiu · · Score: 1

    While the application might be portable to Mono if you're writing in .NET, the problem with .NET is, (IMO), that is still a young technology. java is been there for quite some time now, is stable, there is more documentation for it, it is basically a proven technology. Health care is known for not embracing new and unproven technology. And this is understandable, you can't afford a system problem when there are people lifes at stake. If you want them to buy from you, give them something rock solid, something build on a proven technology.
    The servers might be Sun's or IBM's, the workstation might run Windows, you ccan create web based or desktop application, you basically have choices. Just to make them feel on a secure ground.

    1. Re:Java, of course by Anonymous Coward · · Score: 0

      As you said, Java has been for years, and yet the client performance using the JVM is terrible. Your client should be patients, not doctors...

    2. Re:Java, of course by Anonymous Coward · · Score: 0

      "and yet the client performance using the JVM is terrible"

      Which JVM? Oh, you must have been in a coma for past 5 years... Java isn't slow.

      In fact, most of the time, any Java JVM (IBM, Sun, Oracle, whoever) is faster than both the MS CLR AND Mono's CLR.

      Oh, since you probably don't know: JVM == CLR

  27. Healthcare industry? by amalcon · · Score: 4, Insightful

    Sounds like you're asking the wrong question. What sorts of applications are you expecting to develop? Is it primarily database stuff? Are you developing for a small or large organization? (given that you have an IT staff, I'd expect large).

    The only thing I can tell you for sure is that it's much easier to prove to an IT staff that something's not slow than that something's not insecure -- just show them Eclipse or anything else that...doesn't use Swing...which is the one really slow part of Java.

    Really, though, these technologies are so similar that you should probably just pick one and go with it.

    --
    -Amalcon
    1. Re:Healthcare industry? by Anonymous Coward · · Score: 0
      it's much easier to prove to an IT staff that something's not slow than that something's not insecure -- just show them Eclipse

      Dear God, no. How are you running Eclipse? It makes my 1 GHz G4 PowerBook cry.

    2. Re:Healthcare industry? by jone1941 · · Score: 1

      I'm assuming you running it on OS X? If so that's the source of your problem. OS X's underlying gui framework is fatastic looking but trying to run a Java app written in Java->SWT->Carbon is just not going to be fast. People complain about X being slow, but it is snappy compared to OS X. I recommend to every mac user I know to at least try out linux (definitly people stuck with a G3). It is close to os 9 in speed but with modern underlying OS and modern applications.

      --
      Fear trumps hope and ignorance trumps both
    3. Re:Healthcare industry? by Ogerman · · Score: 1

      Really, though, these technologies are so similar that you should probably just pick one and go with it.

      Sure, you can knock out a solution with either platform. (or even PHP/Perl if you're a masochist) But why lock yourself into an expensive, proprietary platform? .NET doesn't offer you anything that Java is missing. If you're not familiar with either platform yet, pick Java and don't look back.

    4. Re:Healthcare industry? by Anonymous Coward · · Score: 0

      Man, i feel the same way. Everyone's been going about how great eclipse is, but I can't figure out why you'd want to use an IDE where there's so much WAITING.

      If java's not slow, why is every application that I've used it for so slow?

    5. Re:Healthcare industry? by pualo · · Score: 1
      Everyone's been going about how great eclipse is, but I can't figure out why you'd want to use an IDE where there's so much WAITING.
      Waiting? Everything I do in Eclipse happens instantly. Really, instantly. I've been amazed ever since I started using it. Of course, this is on a fast PC. If the Mac version really does suck, then that is a shame, and I hope someone can figure out how to fix it.
    6. Re:Healthcare industry? by jrumney · · Score: 1
      Everything I do in Eclipse happens instantly.

      Perhaps your perceptions of "instantly" have altered to fit what you are used to. I use Emacs. It is what I've used for the last 15 years, and I am comfortable with it, so don't feel the need to change. Most of my co-workers use Eclipse. One day one of them thought he could convert me by showing me the new features in the latest version of Eclipse. He showed me a feature that automatically inserts the import statements needed by a class. A long wait as it analysed the file and drew a pretty progress bar, followed by a dialog prompting for confirmation for each import, and it was done. I was unimpressed. Little did he know that I'd been using the same feature in Emacs for the past 6 months, and it was instant, only prompting for confirmation when there were multiple matches for a classname.

    7. Re:Healthcare industry? by JohnKrasnay · · Score: 1
      I too was an Emacs fan for years, but I've been fully converted to an Eclipse user. The crappy demo from your co-worker does not do Eclipse justice.

      A long wait as it analysed the file and drew a pretty progress bar, followed by a dialog prompting for confirmation for each import, and it was done.


      The function is called Organize Imports, and it's usually sub-second for me, also only prompting in the case of ambiguity. I use it so often that my Shift, Ctrl, and O keys are getting all shiny.

      But that's just one of many cool things in Eclipse. There's Refactor > Rename, where I can rename any kind of language element (class, method, field, ...). Not only does it rename the element, but also scours your code for all references to that element and changes them too. Or Refactor > Encapsulate Field, where you can convert a public field to a private one wrapped with getters and setters. Again, all references to the field are converted to getter and setter calls. In both cases, I can preview all the changes using a graphical diff tool. Does your Emacs do that?
    8. Re:Healthcare industry? by jrumney · · Score: 1

      Refactoring is trendy, but of limited use in reality. The example you give of renaming classes, methods or fields willy-nilly, is pointless and bad for maintainability. Changing public fields to getters and setters is more useful, but what were you thinking when you used public fields in the first place?

    9. Re:Healthcare industry? by Thunderbear · · Score: 1

      Any particular reason for the co-worker not to show you refactoring instead?

      --

      --
      Thorbjørn Ravn Andersen "...and...Tubular Bells!"
    10. Re:Healthcare industry? by Anonymous Coward · · Score: 0

      You're right. To make your program not run slow with Java, all you have to do is map directly to a window API (be it Win32 or GTK).

      Wonderful.

    11. Re:Healthcare industry? by Fulcrum+of+Evil · · Score: 1

      Refactoring is trendy, but of limited use in reality. The example you give of renaming classes, methods or fields willy-nilly, is pointless and bad for maintainability. Changing public fields to getters and setters is more useful, but what were you thinking when you used public fields in the first place?

      Spoken like someone who's never had to maintain shit code. When you have stuff like naming a DB update thread httpThreadPool or littering classes with variables named c_if and THE_CONNECTION, refactoring is a godsend.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  28. Go with borland by Anonymous Coward · · Score: 0

    Borland Enterprise Studio is every bit as powerful as .NET and J2EE, and can produce robust fully-compiled code that is easy to maintain and so on.

    No, I don't work for Borland. I have used their products as well as J2EE and .NET....and I found that Borland's solutions tend to be more stable, predictable, and reliable. :)

  29. I work for a company that does the same thing... by Anonymous Coward · · Score: 0

    I really think you should guys should create a .NET solution. The development time will be speedy! Who are you guys? I would love to join your team and tell you what i know about the industry.
    Mooch.

  30. Java rocks by Anonymous Coward · · Score: 0

    Use Java--it's platform independent. In the future, if your clients want to use OS X or any other OS, Java lets them grow.

  31. if you're practical by Anonymous Coward · · Score: 0

    I've used both J2EE and .NET for commercial systems and would recommend .NET simply because your development time is drastically reduced.

    Of course, if licensing budget is a strong concern then the PHP route would probably be your best option.

    1. Re:if you're practical by Anonymous Coward · · Score: 0

      Bwahahah! You either work for Microsoft or you work in the same field as the one asking the question and want to put him at a disadvantage.

  32. What I think... by ltmon · · Score: 1

    At risk of degenerating this to another .Net vs Java vs the-rest-of-the-world thread.... (too late?)

    I would say java simply because of the number of proven, documented libraries and frameworks with active communities providing good support.

    You can argue which platform is the best until you're blue in the face, but I think the most of your time is going to be saved by well documented, well supported libraries -- not language features or server features.

    $0.02

    1. Re:What I think... by Anonymous Coward · · Score: 0

      What about client requirements? And business? I don't think a good documented library would solve this.

      You have think about time to market, costs fou you and your client e non-functional requirements.

    2. Re:What I think... by theDoorMan · · Score: 1

      I must agree that libraries are a key factor. I recently developed a site with .Net and I am headed back to Java for better libraries---data structures, numerical support, frameworks, etc.

  33. Java *NOT* Slow by Anonymous Coward · · Score: 0

    That 'java is slow' is a bum rap--maybe it was valid in 1997, but it's not anymore. Also, look into Java Web Start for the ultimate ease in deployment and automatic upgrading.

  34. about the same. by Anonymous Coward · · Score: 0

    .NET and J2EE are about the same. Espically when you compare the latest versions, its obvious Sun and MS are in a feature battle. The other thing to look at is licensing issues with using the inner workings of .NET and J2EE. Further more look at performance benchmarks. Java has a bad record with its garbage collector and memory usage (although I hear in newer versions its getting better). You boss is very wrong in saying Java is web-targeted, its everything-targeted to be honest. Also your boss makes the assumption that your clients will want to continue running Windows in the future. Using .NET could imply a OS lockin for your clients (assume mono dosn't fix that for them).

  35. security + lower cost = J2EE by Anonymous Coward · · Score: 0

    If security is important to you, you do not really have a choice... Windows systems are easily compromised, with MAJOR security problems coming up almost weekly. So you'll have to go with Linux/Unix and that pretty much means J2EE.

    We've done a lot of systems with J2EE (mostly financial) and it's been a very positive experience. J2EE has excellent support, both OSS and commercial, lots of excellent tools (many of them are free, take a look at NetBeans or Eclipse), and a proven success record.

    Without knowing your specific requirements, I'd recommend J2EE simply because it offers low start-up cost and we had a lot of success with it. Good luck.

  36. J2EE and webapps by ip_fired · · Score: 5, Informative
    In my opinion, I think that webapps are the way to go with a project like this. I say this because we currently have an old legacy application that uses Borland C++ Builder, and it is very difficult to manage the all of the versions being used by staff members. As we've moved the functionality over to a web portal, we've been able to spend less time distributing executables and more time developing features.

    A webapp has the strength that all you need is a web browser to view the content. When you update the webapp, all clients are updated instantly, without having to push something out to them, or making them download something. This saves a lot of stress and headache.

    There are many technologies out there for writing a database oriented project like this a lot easier. These include
    • Hibernate for object relational mapping and cross compatibility with most major databases (ie, develop on MySQL, deploy on Oracle, Informix, whatever you want).
    • Spring which manages your mappings and helps maintain consistency across your data connections and helps you abstract your business logic, keeping it out of the actual pages. It also integrates with . . .
    • Struts which gives you a great Model-View-Controller framework to practice good development and good security.

    Apache Tomcat, JBoss, and many of the other java based application servers are supported on many different platforms. You can run it on Windows, Linux, Mac OSX, and virtually any hardware provider you want.

    I've been working now on this project for 6 months, and I have to say, I love the structure of this way of working on webapps far more than the common hodge-podge of php or perl. This isn't to say you can't program a nice, easy to maintain app in these languages, just that there is a nice framework with examples and plenty of books to do it in Java.
    --
    Don't count your messages before they ACK.
    1. Re:J2EE and webapps by Audacious · · Score: 2, Insightful

      From the sound of it I would have to say that their first step is to just decide whether it they want to create a webapp, standalone, or client/server program. My choice would be a webapp for the very reasons stated in the above post.

      For languages, although some differ, I would suggest Perl or PHP first (not only because they are fast but both languages run on a large number of systems in the same manner. So if your boss comes to you one morning and says you are moving from a Windows box to a Linux box you can rest assurd that your programs will still execute properly), Java next, C++ after that, and then I might consider .Net. In reality, if you go with a webapp then the backend is not as important as if you were trying to create a standalone or client/server program. This is because as long as the program runs it is more a matter of the hardware than the software that you need to think about. For instance, when the industry at large went from using 200Mhz systems to using 1Ghz systems people were raving about just how fast even basic scripts were executing. Since most systems are now over 2Ghz in speed; scripts execute (to the layman's eye) as quickly as compiled programs. And in truth, unless you are dealing with thousands of hits per minute - to all intents and purposes scripts do execute as quickly as a compiled program. But that's only because most of the work is being done to simply set up the process to run and to take the process back down. The actual execution time of a script or a compiled program is quite small. So to be honest about everything (at least as honest as I can get about this and still keep everything on a general basis) I'd be in just as much of a favor in using Perl/PHP as I would anything else.

      With Perl you create packages.
      With PHP you create classes.
      With Java you create classes.
      With C++ you create classes.
      With .Net you create classes.

      So it is all (basically) the same - no matter which language you go with. Once you have your classes (or packages) set up all you are doing is reading to include them into your program and then running the program. Further, Perl, PHP, Java, and .Net all have built-in encryption. But there are libraries for C++ to do encryption. So (again) it is all about the same.

      (At work I have VI set up so I can just hit two keys and my work automatically compiles and another two keys and it will execute. I know I could combine these commands but in this way, if the compile dies I can go back to editing without having to kill the sub process. What this is leading to is that whether it is Perl, PHP, Java, C++, or .Net - this process is the same as well. Edit, compile, and execute. So there isn't any difference here either. So the whole thing really just boils down to what you feel comfortable working with. Just remember though that in order to use .Net on any other system besides Windows XP you will have to install Mono first. Since Microsoft doesn't do Macs, Linux boxes, Minicomputers, Mainframes, or anything else that doesn't look, sound, and act like a Windows box.)

      --
      Someone put a black hole in my pocket and now I'm broke. :-)
    2. Re:J2EE and webapps by mic256 · · Score: 4, Informative

      I generally agree with this opinion, especially about the part of using a web application if possible, because it simplifies distributing the application greatly.

      Some random thoughts though:
      * you can talk to you manager about the time you can save by using the orm (object-relational mapping) technique vs. sql in general (from my experience you can save a lot of time). Then you can tell him/her about hibernate. There is also ibatis which is available for .net
      * The opinion about java and .net that asp.net is fun to program and java is not really comes from (I believe) the legacy technology called struts (yes, I know, I have the asbestos suit, etc.) Two currently best java web frameworks probably are:
      1) Tapestry (jakarta.apache.org/tapestry). It is used by nhl.com and theserverside.net (check by seeing the source for the pages and search for the word Tapestry in it). Tapestry uses a component based approach. Sample components: a nice table, a tree, a date picker in js... It is trivial to write your own and there is a plugin for eclipse called spindle
      2) WebWorks - I have only heard good opinions about it, haven't used it personally.
      * when presenting and using/developing in java avoid using swing when possible. It is ugly, user unfriendly and slow. SWT/JFace is the way to go. You can also check out the eclipse rich client platform (rcp) tutorial on developerworks at ibm.com - it was two part, probably still available at their web page
      * if possible don't use ejb - especially entity beans. Hibernate/Spring (you can also check hivemind - another IOC), WebServices can be very useful
      * when talking to a manager - references, references, and one more time - references. Who uses this technology, what successful project is based on this technology, who backs that technology (you check who is behind eclipse).
      * Java and J2EE by itself (servlets, jsp, ejbs, swing, jdbc, JDO) as it comes from SUN is rather weak and I would recommend not to use it if it wasn't for open source addons and replacements.
      * .NET is ok, but it might be difficult if not impossible to use Linux for the server. If it was not for its lock-in to Microsoft - well, I would say it's a solid piece of technology (not in every aspect, perhaps, but rather good).

    3. Re:J2EE and webapps by Anonymous Coward · · Score: 0

      Not everything has to be a web application. The probelms with distributing executables can be easily overcome by using Citrix or Microsoft Terminal Services.

    4. Re:J2EE and webapps by Anonymous Coward · · Score: 0

      Say it with me, compared to a local program, web apps are SLOW. If someone has to enter 100 chart updates they want something fast with a flexibe UI. SOMETHING THE WEB IS NOT!

    5. Re:J2EE and webapps by RicoX9 · · Score: 1

      Your logic is flawed. A local program is only as fast as the backend architecture - you aren't going to be entering 100 charts on a local database. Same applies to a web app.

      I work in a hospital. We have a web app that we had built for our physicians to access patient data from anywhere. It is basically a screen scraper. What it isn't is pretty. What it is is quick and very functional. The physicians LOVE it. So do their staff, and ours.

      The advice about avoiding a local app is GREAT advice. Version control is a total pain in the ass. Please do yourself a favor and stay away from browser lock-in on web apps(we have too many that require IE). Keep it simple & quick.

      What do I know though? I'm just the network infrastructure guy....

    6. Re:J2EE and webapps by Valdar729 · · Score: 1

      .Net makes having a local app VERY easy with their auto-update features.

      With .Net making a webapp or a rich client app is not a decision. And with Mono's future support for Windows.Forms you can be assured that you can be cross platform as well.

    7. Re:J2EE and webapps by the+eric+conspiracy · · Score: 1

      With Perl you create packages.
      With PHP you create classes.
      With Java you create classes.
      With C++ you create classes.
      With .Net you create classes.


      Well, yeah, but I wouldn't consider OOD for each of these similar at all.

    8. Re:J2EE and webapps by rainman_bc · · Score: 2, Interesting

      I hope you seriously aren't suggesting PHP over J2EE...

      The security holes in php compared to j2ee app servers... Ever heard of Weblogic?

      --
      09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    9. Re:J2EE and webapps by Decaff · · Score: 0, Flamebait

      I agree with your strategy, but I would suggest changes to your suggested frameworks:

      Don't use Hibernate, use JDO (Java Data Objects). Hibernate is a great product, but it's single-vendor and a proprietary API. JDO is a standard, with 30 competing vendors, some open-source, and is better designed to cope with larger systems.

      Don't use Struts (or just Struts), use JSF(Java Server Faces). This transition is recommended by the creator of Struts. JSF is much simpler to code for, and is a standard API that is being widely accepted by different vendors (you can include free JSF components from, say, Sun and Oracle in the same application). There are visual form designers to speed development.

      If you are developing large projects, it makes sense to develop to standards that allow you to switch between competing (possibly commercial) products.

    10. Re:J2EE and webapps by HeadDown · · Score: 1
      In my opinion, I think that webapps are the way to go with a project like this. I say this because we currently have an old legacy application that uses Borland C++ Builder, and it is very difficult to manage the all of the versions being used by staff members. As we've moved the functionality over to a web portal, we've been able to spend less time distributing executables and more time developing features.

      A webapp has the strength that all you need is a web browser to view the content. When you update the webapp, all clients are updated instantly, without having to push something out to them, or making them download something. This saves a lot of stress and headache.

      Which is nice for you. I haven't seen a single point in your message that relates to the need for the user, who is, after all, paying for this. The first order is to go see what the actual user needs, and if I were the customer, webapps would be straight out. Webapps are decent for infrequent use; they suck if you need rich functionality and need to interact with the software all the time.

    11. Re:J2EE and webapps by Decaff · · Score: 1

      * Java and J2EE by itself (servlets, jsp, ejbs, swing, jdbc, JDO) as it comes from SUN is rather weak and I would recommend not to use it if it wasn't for open source addons and replacements.

      What a vague and broad (and incorrect) statement! Swing is now fast and accelated and Sun provides all the above features (with the exception of JDO) in the form of its Application Server, which is a high quality product. I never heard anyone ever say 'Sun's Java is weak' or 'Sun has weak servlets'!

      As for the ORM, you should definitely use JDO, not Hibernate. JDO is a standard, with competing open source and commercial implementations. JDO integrates well with Spring.

    12. Re:J2EE and webapps by Decaff · · Score: 1

      With .Net making a webapp or a rich client app is not a decision. And with Mono's future support for Windows.Forms you can be assured that you can be cross platform as well.

      No-one with any sense, or a desire to remain in their job, starts developing a project based on 'future support'. Even Microsoft won't give any assurance of what .Net will be in the future, so how can we be assured that Mono (or anyone else) will provide a cross-platform version of .Net?

    13. Re:J2EE and webapps by ip_fired · · Score: 1

      What is nice for the developer is also nice for the user. Do you think the user likes to have the stress and headaches of always having to get the latest software updates? What "rich" functionality are you talking about? My webapp generates PDF forms all filled out with the proper data automatically, ready for signatures. If they want the report in an Excel spreadsheet, that is an option for them (thank you Microsoft for supporting XML file formats!) It queries a decade of property information (it's property management software) for easy audits. It stores all related documents required by federal mandate so that we can actually get our contracts.

      The point is, it does the job, and it's fast enough. Normal pages take less than 4 seconds to load, most reports take less than 10 seconds. It's also easy to maintain, which cuts down on administration and programming costs.

      All of these things are good for the user.

      The great part about it too, is that because it was designed to be a web based system, we were able to add handheld support so that doing real time property inventories is a breeze.

      Yes, you can do this with standalone apps, but you have to have a separate code base for each, and you're locked into a single system. The web browser is about as cross-platform as you can get.

      --
      Don't count your messages before they ACK.
    14. Re:J2EE and webapps by senzafine · · Score: 1
      Webapps are decent for infrequent use; they suck if you need rich functionality and need to interact with the software all the time.
      what types of features did you mean?

      Webapps are great for software that's rolled out and accessed by numerous machines in a heterogenous network. The benefits of thin-client far outweigh certain "features" that the browser is currently unable to provide. In rare scenarios I would suggest a standalone application. But I'm thinking projects like this are the type which have revisions written all over it. And webapps just make too much sense.

      --
      Better than Flickr - Manage, Share, Archive
    15. Re:J2EE and webapps by iwan-nl · · Score: 1
      The advice about avoiding a local app is GREAT advice. Version control is a total pain in the ass.

      This would indeed be great advice when working with other platforms. Java however, has a great client-side application distribution system called Webstart. When set up properly, this will make all version control nightmares go away. When a new version of the client-side app arrives, you simply put it on the server and the clients are automagicly updated the next time they start it. It also makes deploying the app to the client as easy as starting a web app.

      Client-side apps can be a real advantage if you need a more complex UI. Things like drag/drop functionality, context menus and keyboard shortcuts can help you deliver a richer user experience. In webapps you're basicly limited to leftclicks.

      I think the best approach would be to build a backend infrastructure thats independant of the client. This way you can access the system from web apps for simple operations *and* from client-side apps for the more complex ones.

      --
      I'm trying to improve my English. Please correct me on any spelling/grammar errors in this post.
    16. Re:J2EE and webapps by Anonymous Coward · · Score: 0

      Java and J2EE by itself (servlets, jsp, ejbs, swing, jdbc, JDO) as it comes from SUN is rather weak and I would recommend not to use it if it wasn't for open source addons and replacements.

      Really? So whats the open source alternative to Java? Tell me what does your precious Hibernate use behind the scenes - JDBC! Webwork, tapestry etc - all use servlets at the end of the day. JDO is useful and an equal to Hibernate but not popular. Ever wanted to perform a distributed transaction? Use EJB!

      The stuff from Sun is strong, and in 80% of cases overkill but it is definitively not weak, not at all.

      Beware of Eclipse: it is not as platform independent as Swing. Widgets don't look the and behave the same on all platforms and it needs to be compiled for a specific platform. Its very useful but it has limitations.
      Beware of Tapestry: as soon as you want to do something different, you have to jump through hoops!

      Just keep the above in mind and stay away from the hype.
      -Cheers K

    17. Re:J2EE and webapps by master_p · · Score: 1

      But before you embarque on the fine journey that is web applications with Java, please let me give you a list of things to possibly consider, sooner or later:

      1) Hibernate only works with one application server, because it caches the database data locally. If you modify the database from another point (not the application server that Hibernate is running from), then your Hibernate cache will be invalid. This is not as serious as it sounds, until you try to make little apps here and there, all looking at the same data store.

      2) Mapping Hibernate objects by hand is difficult. You need to learn Middlegen. Prepare to have fun with XML.

      3) Forget Struts without a drawing tool. It gets increasingly difficult to main a mental model of a web app navigation, as the site grows. Again, prepare to have fun with XML.

      4) Struts is not a Model-View-Controller framework, as many say. In the MVC pattern, the views can be hooked to the models and monitor the changes automatically, i.e. when the model changes, the views are updated accordingly. Struts offers nothing of that caliber. Struts is great for doing web site navigation though, because the navigation is mapped into the struts.config XML file.

      5) Prepare to have fun with JSPs and Tag libraries. For every little operation your web page does, you need a specific tag, which is a little bit different from the rest, but not different enough to remember it.

      6) Spring is great...it unites every J2EE technology (and the kitchen sink!) under the sun...just know that you need to remember over ...5000 XML tags, because everything is done with XML.

      I don't really know .NET, and I am against the lock-in in the software platform called Windows, but I've heard that all other technologies run rings around J2EE concerning ease of development and development time. I wouldn't call J2EE easy...it's certainly capable, it offers many capabilities, but you will never feel in control...If you feel that XML is a programming language, then go ahead and use J2EE. If you are like me, that is annoyed if the XML document is more than 20 lines long, then you should study J2EE carefully before chosing it as the platform of choice.

    18. Re:J2EE and webapps by Decaff · · Score: 1

      Flamebait? Since when has suggesting (note - suggesting, not ranting) using standards (including open source options) been flamebait?

      What or who have I flamed?

    19. Re:J2EE and webapps by D-Cypell · · Score: 1

      [i]you should definitely use JDO, not Hibernate. JDO is a standard[/i]

      Im not sure I entirely agree with you here. JDO is a nice interface (certainly better than working with JDBC directly) but it is a persistance library designed to be all things to everyone. For instance, it should (in theory) support object databases and relational databases transparently.

      Hibernate, on the other hand, is fast becoming the defacto ORM tool. It deals purely with relational databases and does so very well IMO. It may not be a documented standard, but I always put more weight behind tools that have been largely accepted by the community, whether documented or not. Hibernate passes this test.

      I tend to lean towards hibernate with one, open implementation (no subtle differences of opinion regarding the 'spec' that you get with JDO), and I dont really see a large jump in uptake of object databases in the near future.

    20. Re:J2EE and webapps by Decaff · · Score: 1

      Hibernate, on the other hand, is fast becoming the defacto ORM tool. It deals purely with relational databases and does so very well IMO. It may not be a documented standard, but I always put more weight behind tools that have been largely accepted by the community, whether documented or not. Hibernate passes this test.

      This is true, but there is also wide use of JDO, especially in commercial environments. Hibernate is certainly NOT becoming de-facto (just talk to anyone using TopLink, for example). The new standard implementation of JDO (2.0) is going to be open source, and Apache are moving to JDO as their standard for persistence - something that will definitely encourage its even broader acceptance.

      I see Hibernate rather like the ORM equivalent of MySQL - very widely used, but lacking in some standard features the ability to scale to large systems. There is also, I have to say, a certain arrogance about the Hibernate team that discourages me from using their product.

      The new JDO (2.0) now out in preview has everything that Hibernate does and more, and has multi-vendor support. There is no reason not to use it, in my view.

    21. Re:J2EE and webapps by arkanes · · Score: 1
      I write webapps for a living, and I would recommend against them in almost all situations, especially for medical applications. The browser is actually a pretty piss-poor environment for an application, there's very little opportunity to offload stuff to the client and you have to be extremely carefull about what you choose to because of feature mismatch.

      You can do a LOT more in a client/server application. In a productive language with good tools (Python/wxPython being my preference) you'll probably be faster than deploying a web app, and you'll actually be able to get usefull, rich, client side behavior. The main advantage to a thin/web client app is the ease of deployment and updating, and while it's a fairly major gain I think the increased utility of a rich client pays off. Also, someone else may have already done the work for you, Java Web Start, for example.

    22. Re:J2EE and webapps by D-Cypell · · Score: 1

      Perhaps I should have said defacto, free for commercial use, ORM mapping tool. Clearly this (slightly more restrictive) category doesnt currently include toplink (to my knowledge, the download on Oracle's site provides a version of TopLink that is licensed only for prototype development).

      I guess the debate between JDO and Hibernate isnt really comparing apples to apples. JDO is a specification and Hibernate is a concrete API. I am vaguely aware of reading about somebody using Hibernate to implement the JDO spec (JBoss perhaps).

      What is interesting is that Sun are actively pushing two persistance specs. JDO and the ever popular, entity beans. My money was on entity beans disappearing from the radar but with the new EJB work, inversion of control, Java 5 attributes etc, it sounds like EJB (including entities) are still alive and kicking at Sun.

      So what criteria do you choose to decide on JDO vs Entities? Sun is telling us that both are enterprise ready, transactional, persistance storage access tools.

      I am not aware of Hibernate's potential to scale, or the benefits that JDO provides for scalability but I will say that I rarely choose a library based on its ability to scale. With a clear set of interfaces that define the DAO's and a set of unit tests, changing between Hibernate and JDO probably wouldnt be much of a problem.

      I generally find that even with a spec like JDO, a team still ends up specializing on the selected implementation. You are still 'buying into a product'. I remember looking at CORBA ORB products thinking "This is about 20% CORBA standard and 80% '...or why not try it OUR way' add-ons". Perhaps its not quite as bad in JDO implementations, but the potential is always there.

      So pick a JDO implementation or pick Hibernate. Architect to abstract the choice from the rest of the system wite unit-tests to the interfaces and I guess it doesnt matter. Just comes down to preference (and usually the question "What am I/the team already familier with").

      It is a shame that you see an arrogance in the Hibernate team. I have never seen this, but definatly have from JBoss. Now that hibernate is a JBoss project I truely hope the attitude transfer surgery wasnt part of the deal!

    23. Re:J2EE and webapps by arkanes · · Score: 1
      A webapp is good for any application that has as it's main requirement distributed access and ease of updates, coupled with a lack of a need for rich client interaction. I'm currently working on a data entry web application and it's a nightmare because of brower limitations. A report server (as mentioned above) is a great example of a good web application.

      Version control of client apps really can be solved. It's not even that hard. Sadly, it's pretty easy to do badly. But if you want rich client functionality you'll find that the week you spend writing update functionality a lot less than the ages you'll spend writing customized rich client javascript. There's a very good reason that the applications most people use every day are not thin clients. One thing to bear in mind is that it's not just features that browsers lack, it's also features browsers have that interfere with your application. For example, the back button is the bane of many web applications. The kind of features people want and use when they're actually browsing hypertext are very different than the ones they need and one when they're interacting with a buisness application.

    24. Re:J2EE and webapps by Valdar729 · · Score: 1

      You could use GTK#, but most rich client stuff that is already written will have to wait for Windows.Forms support.

      Mono will always be one version behind Microsoft (as .Net 2.0 is already coming out), but most people that are developing enterprise level applications will be about one version behind by the time their product has gone through all the QA and iterations so that doesn't bother me.

      I agree with you though, I won't go the rich client route until I see the Windows.Forms support, I just wanted to be a MS Fanboy and let people know that it's can be a viable alternative. Perhaps I should have states that GTK# already gives cross platform rich clients.

    25. Re:J2EE and webapps by Audacious · · Score: 1

      Yes I have. However, you are probably thinking in terms of a webapp which works across the web. The original poster did not say they were going to be doing something like that. They were going to be doing an in-house type of program. At least that is the general feel the person gave in their original post. Since we are talking about a trusted internal LAN security concerns should be less than if the whole world could get to the server and/or program. Further, it is likely that if they are going for a hospital or clinic that either of these two places will have their own system's person who will have made sure (hopefully) that their network is secure and that only certain other facilities (such as another hospital in their network) can get to the server.

      It is true that I am giving them the benefit of the doubt when it comes to the sysadmin's abilities - but that is why there are sysadmins. To hopefully monitor what is going on with their systems and networks. I have a brother who has worked in the Dallas/Fort Worth area for the past twenty years. He worked as one of the staff at a major hospital there and part of his job was to monitor the networks and make sure no unauthorized personnel gained access to the system. They never had a problem. But my other brother (who installs networks) had all sorts of problems when he was helping out to install networks into a new hospital which was being built. It seems that the doctors thought they new how to do everything and tried to be helpful by cutting ethernet lines, taking computer parts that they thought they needed, and resetting various components when you least expected them to do so. It finally came down to the doctors were not allowed to touch anything because they'd already caused about a two month delay in getting the internal network up and running.

      In both instances though, once the internal network (or LAN) was installed neither experienced any kind of problems. This is not to say that they won't - just that someone would have to bring their own computer into the hospital (or CD), gain entrance to a room with an ethernet connection (and/or a computer) and then break into the network.

      So long as the outside network and the inside network are kept separate - I don't see any problems with Perl or PHP being used. Even with an external network (or WAN) though, if they keep up with patches on ALL of the networking software they have (including Apache and Linux) they should be able to keep a reasonable expectation of not have a compromised system.

      --
      Someone put a black hole in my pocket and now I'm broke. :-)
    26. Re:J2EE and webapps by Decaff · · Score: 1

      I am vaguely aware of reading about somebody using Hibernate to implement the JDO spec

      That would be good news if true, but last I heard, the Hibernate team had walked away from JDO, saying 'JDO is dead', and infuriating a lot of people (especially as they asked to be involved in the JDO 2.0 spec in the first place). However, if someone independent is doing this, it would be great. In terms of features, JDO 2.0 and Hibernate are very close.

      As for JDO and EJB, this is a HUGELY complicated story, which changes almost on a weekly basis.

      As far as I can tell, it goes like this:

      There were two groups of people. Those who wanted portable standards, and those interested in using ORM mainly as a thin layer above relational databases, and with vendor-specific extensions. The first group went with JDO, the second with EJB. There has been a phenomenal amount of politics agains JDO, because it is highly functional even without vendor extensions: Its very quick to move both between databases and between different vendor's JDO implementations. There is a new spec for JDO coming out that answers most of the criticisms of JDO - version 2.0. Providers of proprietary solutions (such as TopLink and Hibernate) rant against it whenever they can, because it allows such freedom to change supplier.

      To complicate things even further, there is a new spec as part of EJB 3.0 (to be released in 2006) - yet ANOTHER mechanism for ORM, which the JDO vendors, Hibernate and others say they will support. The idea was that it was this spec that would become the industry standard. It will be a long time coming and I really can't see all the vested interests getting together and supporting what is likely to be a minimal subset of features.

      The big advantage of JDO 2.0 is that it takes all the vendor-specific extensions (such as the ORM layer) required to make JDO 1.0 useful and makes them part of the standard. The other big thing is that there will be an Apache version.

    27. Re:J2EE and webapps by Decaff · · Score: 1

      I just wanted to be a MS Fanboy and let people know that it's can be a viable alternative.

      A reasonable and useful thing to do. Personally, I would be far more interested in a cross-platform Mono alone, without the constant reference-back to .Net.

    28. Re:J2EE and webapps by D-Cypell · · Score: 1


      I did a quick google on the "JDO with Hibernate" think and couldnt find such a project. It was a vague recollection, perhaps I am mistaken. Although, there is talk about JBoss using hibernate to implement their CMP. Perhaps it was that...

      I will definately take a second look at JDO. Seems that much has been happening their and so im probably a shade out of date.

      I guess it boils down to the fact that on all of my recent projects, hibernate has handled the ORM and I have never really had cause to complain. If it aint broke, dont fix it, and designing to keep technology neutral covers my ass for when the next silver-bullet comes flying by.

      Having said this, I have a project that is just starting and we are at the 'verticle slice' stage of development. Perhaps I will try converting our hibernate persistance layer to using a JDO implementation. It would be interesting to make the comparison without changing the other tools (velocity & spring at this point). I just may do this...

      BTW... Merry Xmas (Or politically correct alternative)

    29. Re:J2EE and webapps by Decaff · · Score: 1

      I did a quick google on the "JDO with Hibernate" think and couldnt find such a project. It was a vague recollection, perhaps I am mistaken. Although, there is talk about JBoss using hibernate to implement their CMP. Perhaps it was that...

      Yes, this is true. Hibernate is now part of JBoss, I think. As for the 'JDO with Hibernate', I think that may have been something to do with the fickle (yes, they do irritate me) Hibernate developer team taking an interest in JDO a year ago?

      I will definately take a second look at JDO. Seems that much has been happening their and so im probably a shade out of date.

      There are some good commercial versions that give free trials. Xcalia is a good one. They allow you to develop for free. Then you could switch to a free version (such as JPOX) for deployment (this is why I like standards!). There are usually fabulous tools bundled with JDO products - graphical object designers, schema analysis and migration tools.

      I guess it boils down to the fact that on all of my recent projects, hibernate has handled the ORM and I have never really had cause to complain. If it aint broke, dont fix it, and designing to keep technology neutral covers my ass for when the next silver-bullet comes flying by.

      Absolutely! I'm looking a features in Spring (see below) to try and let me abstract even away from JDO.

      Having said this, I have a project that is just starting and we are at the 'verticle slice' stage of development. Perhaps I will try converting our hibernate persistance layer to using a JDO implementation. It would be interesting to make the comparison without changing the other tools (velocity & spring at this point). I just may do this...

      I'm a huge fan of Spring - I have recently discovered it and it saves me a lot of time. There is supposed to good JDO integration (although their documentation for this is very poor).

      BTW... Merry Xmas (Or politically correct alternative).

      Same to you.

    30. Re:J2EE and webapps by TodPunk · · Score: 1

      Density is another interesting one, I think. Relatively new, but some interesting ideas. Of cours, it's php, not Java, but php is not exactly a high learning curve.

      --
      This forum Sig is licensed under the LGPL.
    31. Re:J2EE and webapps by Anonymous Coward · · Score: 0

      Hibernate is a great product, but it's single-vendor and a proprietary API.

      What do you mean by that?

      Don't use Struts (or just Struts), use JSF(Java Server Faces). This transition is recommended by the creator of Struts.

      Source? JSF 1.0 was just released in March. No where in Craig's blog does he say "use JSF not Struts" but rather to investigate both.

    32. Re:J2EE and webapps by sribe · · Score: 1

      As we've moved the functionality over to a web portal, we've been able to spend less time distributing executables and more time developing features.

      So I guess you're not aware that there are many products available to solve this problem??? Hell, I once wrote one--took all of 2 weeks start to delivery, because as it turns out copying files over a network is not all that hard to do ;-)

      Sometimes web deployment does make sense, but just as often it's a knee-jerk no-thought default. And it just makes sense (!) to actually evaluate the needs and decide which is the bigger problem to be avoided: deployment and maintenance issues, or UI issues.

    33. Re:J2EE and webapps by ip_fired · · Score: 1

      We had a system to do this before. It worked well enough. However, as it is really just a way for generating reports out of a database, a web portal actually does make sense.

      Not only that, but perhaps you work with smarter people than I do. It seems that they find the most interesting ways of screwing everything up.

      --
      Don't count your messages before they ACK.
    34. Re:J2EE and webapps by sribe · · Score: 1

      However, as it is really just a way for generating reports out of a database, a web portal actually does make sense.

      Yes, sounds like a good example of the kind of application where web-based fits.

    35. Re:J2EE and webapps by Decaff · · Score: 1

      Hibernate is a great product, but it's single-vendor and a proprietary API.

      What do you mean by that?

      You can only get Hibernate from a single source. No other organisation provides a product which implements the Hibernate API. Hibernate owns that API.

      This is in contrast to JDO, where currently 30 organisations provide competing implementations, including good quality open source versions.

      Source? JSF 1.0 was just released in March. No where in Craig's blog does he say "use JSF not Struts" but rather to investigate both.

      JSF was in development long before that, and during that time, Craig posted this:

      "For applications with a longer lead time, seriously consider waiting for the ability to use JSF components instead of the Struts HTML tag library. Doing this will let you leverage not only the standard HTML components that come with JSF out of the box, but also the rich libraries of JSF components likely to be created by third parties in the future (including Struts developers).

      For Struts after 1.1 is released, the developers haven't yet had formal conversations (which will happen on STRUTS-DEV) about what a future Struts will look like. However, I'm going to continue to advocate a long term migration to using standards like JSF and JSTL when they are available, and de-emphasize the further development of the Struts proprietary tag libraries. "

      at this page:
      http://struts.apache.org/proposals/struts-f aces.ht ml

      The emphasis these days is that a developer should use JSF, or a combination of JSF for UI and struts for controller aspects of complex sets of pages (although JSF is being extended to help with this).

  37. My first post as a member by Slash.er+FX · · Score: 0

    This is /.
    Anything related to MS is not well-recieved.

    Try asking the same question somewhere else.

    PLEASE DON'T MOD ME NEGATIVE.

    --
    discover Charamel, the best firefox theme around. http://members.shaw.ca/lucx/
  38. Because we are the experts by Anonymous Coward · · Score: 1, Informative

    And the answer to your question is J2EE. Simply because you can run tomcat, struts and jstl alongwith a local copy of mysql on any old machine. If plans called for scaling (like heavy weight centralized database using oracle) you can do that, if plans call for scaling the app and port to heavy weight app servers you can do that. With MS, your entry point is your max scalable point and there is no scalability.

    I WILL grant you that developing UI under .NET is easier than J2EE/Struts/Swing at the moment. However this is rapidly changing with new toolkits from IBM and BEA (for websphere and weblogic).

    Have fun,
    Another one of them H1Bs taking american jobs.
    Faraz

  39. XUL, fast, light and stable by Anonymous Coward · · Score: 2, Interesting

    We've been using XUL for stuff like this for a while
    = desktop like interface,
    = lightweight desktop install (eg. firefox)
    = backend choice of components - eg. prototype in PHP, then decide if you really need to go that extra mile with C for any of the slow bits.
    = Users think it's great
    = It's responsive, even on old win98 pentium II's
    = Alot cheaper to add/change develop. etc.

  40. The platform doesn't matter. by Anonymous Coward · · Score: 3, Insightful

    For the past four years, I have been working for a company that develops healthcare software. We chose .NET for our applications, but I have also done a fair amount of development in J2EE environments. In my opinion, both J2EE and .NET are fine platforms and either one will work. It will be the user interface and features of your application that will ultimately determine its acceptance. People who use healthcare applications are not computer people and don't want to be. They just want to enter their billing, schedule their appointments, retrieve their lab results, etc. If your application allows users to do that quickly and easily, nobody will care what the platform is.

    Now, having said all that, I will fall back on the usual logic and say that if your application needs to be platform independent, J2EE is the obvious choice. If you want the easiest and most productive development environment, stick with .NET.

    1. Re:The platform doesn't matter. by Anonymous Coward · · Score: 0

      I agree with this for the most part, but I wouldn't exactly say that the platform doesn't matter at all. For instance, several people have posted suggesting script-based web platforms (i.e. PHP and Perl) be considered. Because successful healthcare apps tend to suffer from cronic scope creep, a platform like PHP might prove insufficient when, in the future, your client asks you for features like HL7 transaction support or automatic telephone appointment reminders. I would certainly limit your potential choices to .NET and Java.

    2. Re:The platform doesn't matter. by darnok · · Score: 1

      > if your application needs to be platform
      > independent, J2EE is the obvious choice. If you
      > want the easiest and most productive development
      > environment, stick with .NET.

      I'd agree with that, with the caveat that I don't have quite the same level of expertise with J2EE that I do with .NET.

      On the other hand, surely you're considering making some/most/all of your apps browser-based. If so, why not go with the following approach:
      - build back-end with J2EE or .NET (your preference; generally most places won't care which you use for back end systems, as they'll have experience supporting each these days)
      - expose all your functionality via Web services
      - build your UI stuff in XUL so it can be driven by any Mozilla-based browser

      Why use XUL? The following reasons:
      - Mozilla browsers run on just about any platform, so your client-side portability issues disappear
      - no client deployment. Particularly important if you face having to make customer-specific changes to your UI
      - powerful user interface; most of the useful UI widgets are in XUL, so you can build an interface that users will like
      - Firefox is taking a sizeable chunk out of IE's market on Windows, and is now getting recommendations from the sources that IT decision makers tend to respect
      - it's easy to code test cases that require user interaction in XUL, so a lot of your initial testing can be done while you build up XUL expertise
      - there's no real lock in; if your customer absolutely requires that a Mozilla browser can't be installed, the effort involved in putting together an identical user interface that works client-server (using e.g. VB.NET or Delphi) is very low once you've got a solid working GUI up and going in XUL. To be honest, that goes for just about any application; migrating your GUI from one toolset to another is very fast, *except* when you have to migrate to a regular HTML GUI such as IE

      Downsides of XUL
      - no really good IDE at present. There's a few good looking works in progress, but that's about it. An IDE along the lines of VS.NET or Delphi for XUL would be a huge step forward at this point
      - documentation exists and is quite comprehensive, but high quality tutorial-level stuff in particular can be tough to find. Plenty of good reference material though; either online or in books

    3. Re:The platform doesn't matter. by Ogerman · · Score: 1

      If you want the easiest and most productive development environment, stick with .NET.

      This is rather a myth unless your team is a bunch of MS junkies who've never used anything but Visual Studio. Java development tools, overall, are more powerful than those for .NET today. And the Java development tools are mature and time-tested.. For those getting in on the ground floor of enterprise software development, just choose Java and don't look back. There's no compelling reason to choose .NET if you're just starting out. All the problems that have plagued Java in the past (early 90's, dot-bomb era, etc.) have been solved.

      But do note: You should be largely looking to the Open Source community for your Java tools, not Sun. Sun is driven by committee. OSS is driven by what works in the real world. Look to Spring, Hibernate, Struts, and the rest of the Apache Jakarta project. Forget about heavyweight J2EE app servers unless you really need them. (And you can always refactor later)

  41. web or fat client ??? by Anonymous Coward · · Score: 0

    First off, there has to be a server somewhere ( database ), for a doctors office, a reasonable $2K PC will do. J2EE is web centric, but I have left behind EJB and done everything lately with Tomcat/Spring/Hibernate/JSP/Struts in Eclipse with MyEclipseIde, so much easier. Fat client, you have Swing vs .NET more or less. Last I checked, .NET did not work on Windows 98???, is every hospital running XP??? Java will still work there. And don't think your getting some "Free Ride" on Windows, they will still have to download/install the .NET 1.1 runtime, which, size wise, is close to the JRE. .NET on the client is nicer, but it's still a VM, and not orders of magnitude faster than Java. Assuming there is no need for a large, mission critical, fault tolerant architecture, I'm sticking with the light Java concepts. Fat client, I'm undecided, except I KNOW I would architect it to be driven by meta-data, and not hard coded screens.

  42. .NET by Anonymous Coward · · Score: 0

    Use .NET Webservces. Somone here voiced that PHP/MySQL and a "shared hosting" deal would be better than having a "dedicated server" - they obviously don't know much about .NET. All you really need is a Windows server, somewhere, to run your webservice. Webservices are relitivly easy to setup on a Windows machine. A webservices is basically some ASP .NET and a whole bunch of DLL's. And if you wanted to extend this application so it is a "desktop application", all you need todo is write your frontend and tap a SOAP service.

  43. J2EE by Nik13 · · Score: 1

    .NET has a couple nice things, but overall, I absolutely despise it - and that's coming from a long time developper on windows only. I still prefer ASP over ASP.NET (that's sad, isn't it?). Next logical step for me isn't anymore "upgrading" to .NET - it's doing the switch for good. I've had it with them. Out with Win/IIS/SQL server - Moving to Apache (PHP, J2EE, ...) on a *nix box for good in the near future. And J2EE is a lot more portable (can be hosted on whatever you want, lower costs and maint than a windows box imho) I used to be a hardcode MS fan, but I guess I'm starting to see the light at the end of the tunnel...

    --
    ///<sig />
    1. Re:J2EE by Valdar729 · · Score: 1

      I call BS. You don't go into any specifics of why .Net is so bad. Every single developer I have ever talked to thinks .Net is a godsend.

      You know nothing about .Net and probably nothing about programming in general since you're suggesting PHP for a medical application.

    2. Re:J2EE by Aquila+Deus · · Score: 1

      PHP can integrate with .NET amd Java. It's actually a possible solution for web interface. (but nothing else!)

      --
      hmmm... dumb...
    3. Re:J2EE by Decaff · · Score: 1

      I call BS. You don't go into any specifics of why .Net is so bad. Every single developer I have ever talked to thinks .Net is a godsend.

      It is definitely a godsend. For Windows development.

      But no matter how great .Net is, I had thought that the idea of developing large-scale software for a single platform, using products from a single supplier, went out decades ago.

    4. Re:J2EE by Nik13 · · Score: 1

      There are tons of people who don't like .Net, and the issues related to the whole .Net technology is FAR beyond the scope of any /. post. If you actually ever tried making real use out of it, you would see lots of problems, or perhaps you've never used it? We're a whole department who decided to get away from it, and we're not the only ones (read the other posts for other examples). As for PHP, if you had actually understood my post, you'd see I didn't suggest it for his purposes, I said that it was one of the things we're moving to (instead of ASP or ASP.Net) but that was too hard to understand I suppose...

      --
      ///<sig />
    5. Re:J2EE by Valdar729 · · Score: 1

      Again, you didn't mention a single example of something wrong with .Net. I've used it in enterprise level applications that had thousands of users for Time & Attendance software. Many big corporations use our software for keeping track of that information.

      Even before my current company I developed a full accounting and scheduling system, by myself, for a manufacturing company that has over 100 employees. The application was written in 3 months by ONE person and they couldn't be happier with it.

      I have friends who are team leads for projects using J2EE and we've collaborated on some on the side contract work in Java and .Net and they are so amazingly similar I can't see how you can you'd rather go with one than the other.

      Oracle vs. SQL I could understand as SQL has some clustering shortfalls that have forced me to go with Oracle in the past. But I still say you have no idea what you're talking about since you don't give specific examples and not you're trying to cover your ass.

    6. Re:J2EE by Valdar729 · · Score: 1

      Well, the thing about the development we do is that most of it is web based, although there has been some move in the direction of rich clients lately.

      One of our big selling points is platform independence since we are web based and if a company doesn't like windows they can stick our server in a lonely dark corner cut off from the rest of the world.

      Since we have a nice DAL we can switch between DBs almost painlessly, which we've done for some people that have invested heavily in Oracle.

      I've been watching Mono closely and I'm waiting for their Windows.Forms support before we start prototyping any Rich Clients as we want to maintain that we can be "cross platform", even with a rich client.

    7. Re:J2EE by Valdar729 · · Score: 1

      I never thought of that solution. Web services backend in .Net and Java, but the front end in PHP...interesting.

      That might work as our entire architecture is web services based so that clients can do their own thing with our SDK and not be limited by our UI.

    8. Re:J2EE by Decaff · · Score: 1

      I've been watching Mono closely and I'm waiting for their Windows.Forms support before we start prototyping any Rich Clients as we want to maintain that we can be "cross platform", even with a rich client.

      I know this may sound like flamebait, but it's not intended to be:

      There already is a well-established, proven cross-platform solution with rich client support (including OpenGL-accelerated GUI on the client side, and ActiveX support). Its called Java! It has the huge advantage that it allows rich clients on Mac and Linux too.

      I see a lot of resistance to using Windows server-side, as there is such a fast growth in alternative server solutions.

      There are a lot of Java/.Net bridging solutions that would allow slow transition to a more portable system.

  44. neither by Anonymous Coward · · Score: 0

    Funny that you ask an audience that hates both .NET and anything that Sun does. You should develop it in ogg vorbis. Then slashdot will love you.

  45. REALbasic by adam1234 · · Score: 0

    Depending on the need for rock-solid reliability, have you considered using a high-level RAD tool?

    I've had positive experiences with REALbasic, a high-level BASIC-based language that is similar to Visual Basic but compiles for Windows, Mac OS X, Mac Classic, and Linux (GTK). It even makes console apps.

    Just tell the decisionmakers it's a .NET clone that works cross-platform. If you don't need the power of Java or C#, REALbasic could be a good choice--and you'd never need to port code from platform to platform.

    1. Re:REALbasic by blackburnrovers · · Score: 1

      I have just started working with REALbasic. It is a fantastic product, and making applications with it is a breeze, especially across platforms. User community is very supportive, and the folks who started REALbasic often weigh in for help. Might be a little too small at this point for you to convince the higher ups though. REAL software website

  46. Good night slashdotters by Anonymous Coward · · Score: 0

    Do yourselves a favor and unplug yourselves from the net. Have a good weekend!

  47. J2EE and webapps-Laszlo Systems. by Anonymous Coward · · Score: 0

    I'd recommend Laszko as part of that solution. It runs on a java server, and I heard rumour that it was being ported to .NET.

  48. Been there, done that by christian+simpleman · · Score: 5, Interesting

    Last summer we developed a case management system from scratch for hospital admissions pre-qualifications and tracking. Our client serves the medical insurance industry, therefore HIPPA was a factor. We used LAMP all the way, finished the project in three weeks (no brag, just focus and swinging elbows), and they have fifteen nurses banging away 24/7, client access via https, and 100% uptime. All of their money went to us instead of software licensing, they paid less anyhow, and they are smiling ear to ear.

    If the PHP is not elegant enough, for the love of sanity please use Java. If we don't feed the monster that is choking, screwing, and robbing us, it may weaken and we can get on with an unshackled future. We do the entire world a favor whenever we choose sane engineering.

    "If no one tilts at windmills, the damn things will take over the world!"- Christian Simpleman

    --
    "If no one tilts at windmills, the damn things will take over the world!"- christian simpleman
    1. Re:Been there, done that by Anonymous Coward · · Score: 0

      "and they have fifteen nurses banging away 24/7"

      The mind boggles.... MMMMMM

    2. Re:Been there, done that by katana · · Score: 5, Funny
      they have fifteen nurses banging away 24/7

      What kind of medical facility is this, and how can I check in?

    3. Re:Been there, done that by Anonymous Coward · · Score: 1, Informative

      Again, that would be HIPAA - http://www.cms.hhs.gov/hipaa/. I love the fact that we have all these programmer/engineers/designers who can throw around a host of programming metaphors and every buzzword in the Buzzword Bingo game card and yet can't remember that it's HIPAA (Health Insurance Portability and Accountability Act) not HIPPA. I guess it doesn't surprise me since a good 3/4 of the healthcare providers and health organizations out there have pages on the internet that mispell it.

      What cracks me up even more is the people who refer to it as the Health Insurance Portability and Privacy Act (OR Health Insurance Privacy and Portability) and the use the abbreviation HIPAA.

      It's only been around since 1996 - you'd think sometime soon some consistent use of terms would emerge. But what the fuck, it is the healthcare industry after all.

    4. Re:Been there, done that by Anonymous Coward · · Score: 0
      It's only been around since 1996 - you'd think sometime soon some consistent use of terms would emerge

      Or how about a consistent interpretation of the Implementation Guides?

      No! That is NOT what the 2110 loop is for!

      Yes...I hate my job...

    5. Re:Been there, done that by Anonymous Coward · · Score: 0

      It's nice that your software works, I guess. I imagine that you designed for your target customer, but an installation that small won't stress much of anything far enough to expose any cracks in the architecture. There could be many issues that may not be exposed under such a light load.

    6. Re:Been there, done that by juan2074 · · Score: 1

      Isn't there a movie about that place? 'Night Nurses', anyone?

    7. Re:Been there, done that by Anonymous Coward · · Score: 0

      They're all male nurses.

    8. Re:Been there, done that by tanjavuru · · Score: 1

      how about python ? php and java dont not even come close to the elegance of python . if you need an app server for python there is zope !

  49. .NET vs Java by Anonymous Coward · · Score: 0

    I think the question applies to any software not just medical.
    I have used both. I lean towards Java. I like the cross platform option and even though all the PC your boss sees has Windows they probably do not have the needed .net framework.

    You are also not asking a balanced question. When you say Java most peple mean getting the SDK and working with it. When you say .net most people mean buying into an expensive set of software from MS including a DB and development enviroment.
    When choosing Java you need to look at the DEV tools. Getting a good enviroment makes all the differences in the world. Jbuidler, Intelli-J net beans are all worth looking at. (I like JBuilder for general use and GUI work).

    Also, what is the hosp have on the backend?
    If you go Java you have more posibilities. If you go .net you are trapped. (Mono folks add your comments)

  50. Maybe a useful pointer? by Anonymous Coward · · Score: 0

    Try looking throught the archives at http://linuxmednews.com/

    There are a bunch of projects relating to practice software, HIPAA and medcial billing.

  51. Hospital systems by Anonymous Coward · · Score: 5, Insightful

    I work for a small company that does almost exactly what you're talking about, but so far only for hospitals. We have been in business for twenty years now and are having some of the same discussions. We currently run on win32, SCO Unix and AIX. In the past we have supported DOS, HP-UX, Solaris, Linux, AIX, UNIX and WIN32. Most of our customers are running our software (which is character mode btw) on Windows, but our largest, highest paying, and most stable customers are on AIX. If you want large customers you may want to consider something portable. They will usually have a RS6000 running Oracle in the hospital and have many Windows machines connected to it. You can get away with ignoring the RS6000, but that's the most stable machine in the building and IS would love to put it to use. From a support point of view, our customers on AIX and UNIX have the fewest problems and call us the least. There is nothing like trying to diagnose a label printing problem on a Windows network while working remotely over a modem or vpn connection.

    Our debate is focused on whether we should support only one OS, probably Windows, or continue to support three. We'll be switching from UNIX to BSD at some point. (Personally I'd rather use Linux, but as a company we are familiar with UNIX and I'm told BSD is very similar.) The Unix variant side likes the security and reliability, the Windows side likes the graphical interface and the fact that Windows machines are everywhere. Plus we have both Windows and AIX customers that insist on their OS of choice. One thing that scares me about Windows is HIPAA, which makes the hospital liable if a patient's information is leaked. No court cases have been brought yet, but the thought of all that patient information on a Windows machine that could get hijacked is scary. A lot of these hospitals allow remote vpn connections and some of these networks get infected with a worm now and then. I wonder how long before someone decides to steal a patient database and bribe the hospital?

    Most hospital systems, and even some Physician software will communicate with other systems using HL7 protocol over TCP/IP. This is the thing keeping us busiest now and a lot of times it's what the hospitals find most useful.

    Just my two cents, but get used to having the customer tell you what they want and be prepared to do it, if at all possible. Flexibility is key, even more than taking advantage of the latest software trends. Support wise, they will need hand-holding, but they will be loyal customers if you respond to their problems quickly and kindly.

    1. Re:Hospital systems by Monkius · · Score: 1

      Yours is the most informed post in the thread, but you're contradicting yourself in your remarks about Linux.

      Supporting only one OS mostly makes sense only if it _isn't_ Unix. Also, Linux is more like most recent commercial Unix, unless the last Unix you supported was Ultrix. Seriously.

      --
      Matt
    2. Re:Hospital systems by Anonymous Coward · · Score: 0

      If you're doing HL7 and Java check out the HAPI project at sf.net.

    3. Re:Hospital systems by Anonymous Coward · · Score: 0

      Sorry, what I meant to get across was that if we were to go with only one OS, it would be Windows, but thanks to other customer demands we likely won't go with just one OS. Unix is a legacy OS for us - we are retiring it, we just haven't decided whether to replace it with OpenBSD, RedHat, Suse, or Gentoo. I'm afraid my programming/administration/support experience is in Windows, so I can't contribute much to the 'which open source Unix workalike should we use' debate, but I would far prefer we use a Linux distribution because I love the GPL. Much as I love it, our main job is making sure we can support our customers efficiently.

      One thing I meant to mention in the first post is that these systems need to be written to a high standard as far as accuracy and timeliness is concerned. The performance of these systems effects patient care, meaning they can save a life or end it. Inevitably a patient will die, and someone will blame it on the computer. You need to make sure the computer is 100% accurate in what it reports, let's the user know when it's not functional, and that you save enough information that you can prove the system worked correctly when there is a dispute.

    4. Re:Hospital systems by Anonymous Coward · · Score: 0

      I'd highly suggest going with OpenBSD. The obsd developers value code correctness a lot more than Linux devs, and it's got high security to boot, without having to apply all manner of 3rd-parthy patches like grsec, selinux, etc. The environment is extremely clean and cohesive, and a joy to code for and support.

    5. Re:Hospital systems by Anonymous Coward · · Score: 0

      Thank you - that is the running favorite. I've heard nothing but good things about it, including that it's the most stable and secure PC OS available.

    6. Re:Hospital systems by Guido69 · · Score: 1

      I beg to differ. I think MY posts are the most informed in this thread.

      :)

      --
      - If we aren't supposed to eat animals, then why are they made out of meat? - Steven Wright
    7. Re:Hospital systems by Monkius · · Score: 1

      Noted.

      --
      Matt
  52. Mod this advertisment down. by Anonymous Coward · · Score: 0

    He must work for ramp, because nobody else would claim that shit is worth using.

  53. Sorry, have to flame by Anonymous Coward · · Score: 0

    Bah. The answer is, you shouldn't be using either one of them. Neither you nor your company has healthcare knowledge. If this is a contract, how did you get it? If it's an investor, this is a great way to waste their money.

    If you _had_ any of the required knowledge, you probably wouldn't be asking this question. As it stands, you only provided enough detail to start a useless flame war between the two - though so far you've gotten better than you deserve.

    So, if you manage to take either ".NET" or "J2EE" and throw one of them in a hat, mix in your clueless developers, and actually _sell_ something, please let us all know, would you?

    But I ain't bettin' on it.

  54. PHP is not a tool for serious work by Anonymous Coward · · Score: 0

    PHP is a toy for amateur web developers who do not care about security or scalability, not a tool for serious work.

    1. Re:PHP is not a tool for serious work by Tablizer · · Score: 1

      PHP is a toy for amateur web developers who do not care about security or scalability, not a tool for serious work.

      Can't you provide something more specific before bashing a tool/language?

  55. That gave me a scare by Anonymous Coward · · Score: 0

    For a moment there I thought you were considering Java/.NET for life-support machines

    "Warning: patient's heart rate is -4.12746e28 bpm, which is NaN% higher than the maximum tolerance ofNullPointerException at hospital.lifesupport.HeartMonitor.getMaxHeartRate( HeartMonitor.java):2319

  56. Suggestions from a hospital IT employee by Anonymous Coward · · Score: 1, Insightful

    I have worked in a hospital IT department for 10+ years and we support approximately 1000 workstations. Here are a few suggestions:

    1. Make it easy to deploy/update. Preferably web based, or your app can update itself. If not, make sure it can be installed silently via MS SMS, group policies, etc.

    2. If using a database, you better make sure it enforces integrity and does not try to guess what you mean and do it's own thing. MySQL for example will "help" you by truncating strings and accepting crappy data. You don't want to be screwing with patient data. Lawsuits are common and your data will need to stand up in court. Yes, your app should be able to stop this - but you never know! If open source is your thing, try Firebird.

    3. Hospitals shutdown for evenings, weekends, holidays. There is never a "good" time to have downtime. Minimize the need for it and try to build redundancy in your app.

    1. Re:Suggestions from a hospital IT employee by Anonymous Coward · · Score: 0

      Ummm...

      3. Hospitals shutdown... = Hospitals don't shutdown...

  57. Hrm by Bandit0013 · · Score: 0

    First of all, with Mono don't believe the portability hype. You can port .NET applications over to other environments fairly easily.

    There really isn't enough information in the post to make an intelligent decision. Are most of your clients running microsoft software? If so .NET is the logical choice because of performance, scalability, and frankly, Microsoft's RAD Tools (visual studio, etc) are far superior to most things you find in the Java/OSS world.

    In addition, with HIPPA requirements and the medical field's demand for accountability from vendors you're going to make a solid case for your platform if it's backed by an entity like Microsoft rather than the mysterious OSS Community.

    In addition, J2EE / OSS software generally require a more knowledgable (read expensive) IT staff in place to manage patches etc. The more niche your market is (not so bad for J2EE, but php, python, etc are definately niche) the more expensive consulting talent will become! Microsoft is banking on .NET and Windows Server technologies to be easier to maintain and faster to develop with.

    In the end though, you need to research what the target markets are using now and tailor a technology that is appropriate for the market.

    1. Re:Hrm by techiemac · · Score: 1, Interesting

      Hmmm... let me think about this comment.... BuHAHAHAHAHA!!!! Microsoft secure AHHHAHAHAHA!!!

      But seriously, I respect the fact you made some of these comments. But I think some of the reasoning is flawed. Windows is simply not a secure platform from both a quality and archectecture standpoint. I know this from experience (heavy amounts of development for many, many different operating systems... not just Windows/Linux)

      I do agree with your comment on researching the target market and that is often what is forgotten when using the latest wiz bang technology. Pick the best tool for the job. Just because it's today's buzzword does not mean it's the best tool.

      I simply do not think that Windows can hold up to HIPAA. Would you trust Windows to cover your legal butt? I am not saying this as a Linux/BSD/Solaris/MacOS/VXWorks/PSOS/etc zealot but simply from experience. Security wise, Windows still has a ways to go (i.e. allowing arbitrary code execution from a web page, email, etc). When it gets there then I will trumpet Windows as a secure OS.

      My advice (and it's /. advice so don't take it too seriously ;) ), look at your target market, pick the best tool for the job, always have a backup plan if that tool doesn't work.

    2. Re:Hrm by jerdenn · · Score: 1

      It doesn't matter if you think that Windows can hold up to HIPPAA. It matters if HOSPOC IT staff, the FDA, and other federal regulators think that it can hold up.

  58. Use to work for UK healthcare solution provider by plcurechax · · Score: 4, Insightful

    Hint: There are fairly few recent PCs in many hospitals. So unless you are targeting only wealthy private hospitals, assume the worst.

    I use to work on a Unix based custom information system that over a decade old, and on a dozen Unix platforms, and they were developing a new Windows based system. It took multiple years to develop with the new product that was not good enough to replace their existing Unix solution, so hadn't sold a single copy of the new system.

    Of course, to your secondary question, I don't know, but I think it is a classic case of horse before the cart though.

    1. Re:Use to work for UK healthcare solution provider by kinema · · Score: 1
      There are fairly few recent PCs in many hospitals.

      I know a database engineer that works for a large national health care provider she says this isn't as true as it used to be. Y2k was a wakeup call for an industry that was still maintaining an amazing amount of COBAL and even MUMPS code on old school big iron. This particular health care provider did an organization workstation upgrade during '99. All machines were not only required to be Y2k compliant but those that were running Microsoft OSes were required to be upgraded to W2k or XP. As far as the server side of things are concerned all new apps run on Oracle.

      The other thing that is driving the industry to revamp is HIPAA. All apps have to be at very least audited for compliance. Often times it's easier and more future-proof to reengineer and reimplement these legacy systems. It's getting harder and harder to find coders that are not only qualified to audit these archaic systems but that want to spend their time doing it. Even if the pay is good would you really want to spend your days digging through two decade old COBAL?

    2. Re:Use to work for UK healthcare solution provider by good+soldier+svejk · · Score: 1


      The hospital I work for has repeatedly ranked first in Hospital/Health System Information Technologylists published by Information Week and other like publications and organizations. The bulk of our clinical systems are based on Intersystems Caché, which is basically the most current descendent of M/MUMPS. Increasingly, the front end is web based, but there are still apps that require terminal emulation. Although we too held a Y2K upgrade free for all, that was five years ago, and many of those desktops are still in service. Five years used to be our oficial desktop service life expectation, but now we are a little more rational about that (four years IIRC). We support ~7,000 desktops.

      Interestingly, Caché is pretty cross platform. It runs on a variety of hardware and OSes, including OpenVMS, various unices, GNU/Linux and OS X. It also turns out to be an appropriate and cost effective solution for medical record management. Not surprising considering its M/MUMPS heritage. After all, M was developed at Mass General.

      --
      It is cowardly, and a betrayal of whatever it means to be a Jew, to act as a white man

      -James Baldwin
  59. Mumps by JustOK · · Score: 1

    No one has mentioned MUMPS yet?

    --
    rewriting history since 2109
    1. Re:Mumps by Anonymous Coward · · Score: 0

      I worked for a company that built medical software using MUMPS. The language is good for string manipulation...horrible at everything else...the only other notable feature was that it had a rather simplistic way of randomly accessing data stored in a B-Tree (MyVar["Dim 1",2,12/12/2004,"Dim 4"]).

      That MUMPS job sucked...I'd rather spend my days counting parenthesis in Lisp code. (1.. 2.. 3.. 2.. 1.. 2.. 3.. 4.. uh, where was I????)

    2. Re:Mumps by Anonymous Coward · · Score: 0

      Ahhhhhh no no no bad flash back! No mumps no mumps no mumps.... mumps never existed mumps never existed .. calming down now ... most of the big shops have gotten over mumps.

  60. Been there, done that-Tongue tied. by Anonymous Coward · · Score: 0

    "What kind of medical facility is this, and how can I check in?"

    Step on your tongue.

  61. Slow by Dan+Farina · · Score: 2, Informative

    Java is not that slow. In ye olde days it had a pretty high memory overhead--it still does--but who cares anymore? Memory is cheap and expansive, and (rightly so) people would rather have security and dependability.

    I would choose Java over .NET simply because of maturity and to stay away from a dangerous MS. We all know that MS has the balls and the market share to squash an enemy by any means necessary, even if that means doing something nasty with .NET. Sun doesn't even has this option. I'm not sure if they have the balls, but they sure don't have the market share. It is in their interest to make Java a viable competitor, not a tool for entrenchment. Their biggest conflict of interest is probably in offering Java for Linux which competes with Solaris. Obviously they are not in a position to withhold support.

    While I don't have extensive experience with it, you could compile your Java into native binaries...see GCJ and JET.

    That having been said, I would definitely consider some of the options presented that do not fall in the binary choice you have presented us.

    Finally, while I have not done so personally, my cousin's husband works for a company that develops their product in Java, but apparently can, with not too much trouble, use some automated tools to generate C# for the occasional dead-set MS customer than they come upon now and then. I don't know if tools to perform the inverse exist. He made C# translation sound like fairly trivial an issue for them.

    1. Re:Slow by fimbulvetr · · Score: 0, Troll

      Java is not that slow. In ye olde days it had a pretty high memory overhead--it still does--but who cares anymore...

      There ya go buddy, fix the problem by ignoring it! Works for others.

    2. Re:Slow by Mr.+Shiny+And+New · · Score: 1, Offtopic

      His point isn't that he's ignoring a problem; though the argument is badly worded, what was meant was that Java's memory overhead was considered high in the early days, but it has remained mostly constant compared to the ammount of ram available to programs, and compared to the size of the java application program itself. So what used to seem like a huge overhead is not even noticable now.

      And Java's JIT compilation actually out-performs natively compiled C++ in some cases. So it's not a clear-cut "Java is slower" question; for some jobs it will be, but for many, many jobs it is either A) fast enough, and the speed lost is worth the savings in security and dev. time, or B) faster than native code.

      Of course, all of this doesn't mean that you should always use Java. But you should always try to use the right tool for the job, even if that tool is Java or .Net.

    3. Re:Slow by dnoyeb · · Score: 1

      Of course Java can unload unnecessary and unused class definitions saving RAM at runtime, something c++ can not do when its running on a CPU.

      And I like to point out that Java virtual machines ARE c++.

      Finally I'd like to add that Java 1.5 has implemented footprint sharing which will reduce the amount of RAM used by multiple JVMs running at the same time. Not exactly ignoring the "problem."

    4. Re:Slow by Mr.+Shiny+And+New · · Score: 1

      Java VMs may be written in C++, but the java bytecode gets optimized down to real machine code, so it's actually irrelevent what language was used for the JVM. But anything that's implemented 'native' in the VM, as opposed to in pure java, is run as regular c++.

  62. No, but J2EE is. by Anonymous Coward · · Score: 0

    Java is pretty decent speed-wise, but J2EE app servers are often very slow, it pays to be picky about which one you use. Jboss for instance, helps perpetuate the java is slow myth with their terrible performance.

  63. Appserver costs by Baby+Duck · · Score: 1

    Apache/Tomcat/JBoss has no appserver costs. Oh you actually want support for JBoss? Well MS support doesn't come free either. What will the software process? Leaning more towards patient care (hospital bed allocation, tracking nurses rounds, prescription maintenance, appointment making, etc.) or health insurance management (claims, billing, enrollment, referrals, etc.)?

    --

    "Love heals scars love left." -- Henry Rollins

  64. Java with swt by Anonymous Coward · · Score: 0

    simple choice really, this will give you the ability to deliver a rich user interface along with portability. .net with windows.forms is just going to tie you into a microsoft only.

    Also you have eclipse as a development and learning tool :)

  65. Do you develop with java using your toes? by Anonymous Coward · · Score: 0

    Seriously, C# and Java are so similar, its rediculous to try to pretend development is faster in one than the other.

  66. ruby or Trolltech/Qt, two excellent options by Anonymous Coward · · Score: 0

    two excellent options, IMHO the best things currently out there.

    there are both mature and supports standard technology

    if you plan something web, have a look at http://www.rubyonrails.org

    you definitely needs to give us way more details to receive a definitive opinion.

    other references:
    http://www.ruby-lang.org
    http://www. ruby-doc.org
    http://www.trolltech.com
    http://doc .trolltech.com

  67. I despise Microsoft but by BlackMesaResearchFac · · Score: 1

    the worlds best procedure documentation and coding compliance software is converting to .NET.

    www.provationmedical.com

    --
    -- Scientist: You aren't going to leave me here, are you? Boagh! Thump...
    1. Re:I despise Microsoft but by Anonymous Coward · · Score: 0
      the worlds best procedure documentation and coding compliance software

      according to who? the vendor? puhlease!

  68. Plan for both by Anonymous Coward · · Score: 0

    BlueDragon produces a CFML-for-Java product, and ported it to Visual J# (.NET) very quickly. This URL has more information: http://www.microsoft.com/resources/casestudies/cas estudy.asp?casestudyid=15864

  69. .NET provides better RAD support by Anonymous Coward · · Score: 0

    toe-programming fetishes aside, .NET does provide better support for RAD, so if you're a practical team that needs to get the job done decently & quickly, go for .NET.

    for example web services, .NET provides better tools to access / export a variety of data formats transparently.

  70. Correct me if I'm wrong by Anonymous Coward · · Score: 0

    Correct me if I am wrong, but J2EE can't even do client/server scenarios.

    With .NET you can have clients communicate over sockets to windows services.

    J2EE is purely "pulled" (client triggered). Whether its a JSP, Servlet or Web Service. Nothing is persistently running in background.

    I'd recommend .NET for this alone--J2EE can't meet your needs assuming you are doing client/server system. Any healthcare system needs rich clients (that interact with hardware which I'm guessing yours may do). You can roll desktop apps with Java but its painfully slow, and even then you can't communicate with a J2EE system over sockets or have the J2EE server push updates to the client--its still must be pulled by the client.

    1. Re:Correct me if I'm wrong by rdean400 · · Score: 1

      J2EE runs on J2SE, and there are plenty of facilities available for:

      - Running web-based clients to business objects
      - Running flash-based clients to business objects
      - Running Swing/SWT fat/rich clients to business objects

      However, unless you use Flash, UI work is not as easy for the developer as it is in Visual Studio (or Delphi, for that matter).

    2. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      Are you suggesting that his/her desktop client would access the "business objects" as EJB and do JNDI naming for it?

      I don't know...kind of seems kludgy? I always pictured EJB to be used by the JSP/Servlet and not by an actual remote system.

    3. Re:Correct me if I'm wrong by jbplou · · Score: 1

      I would think a flash client for a medical app is rediculous.

    4. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      apparently you have not been introduced to flex.

    5. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      Business Objects (EJBs) themselves are not able to call any shots though. You can't have a bean sit in memory and trigger events every 5/10/30/whatever amount of minutes.

    6. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      If EJB's won't work how about our friend Mr. Web Services...arf I see what you're saying. There's plenty of scheduling tools available to run on a unix box aren't there?

      That you can go in and say run program xyz every 30 minutes, except when I'm on vacation, then don't run it at all. :)

    7. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      Correction - it can.

      J2EE 1.4 has timers (actually you could do it with J2EE 1.3, but in non-standard way).

      Again .NET just has nothing similar to EJB or... server. You can talk about WINDOWS COM+ services it even has no security to it!!! ANY! Authentication is done thru IIS. Microsoft itself just has no idea what .NET is. .NET is just a funny word to name some clumsy and partial clone of Java binded to the old and almost dead windows technology (OLE, ODBC, COM, GDI...). They just need a TIME to remake whole Windows (LongHorn?) and to gain some they feed as this crap as a "technology".

      super coward

    8. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      The problem about using cron and similar tools is that its purely poorly designed.

      A system such as this (in an important sector) should be self-sufficient and not rely on patchwork of external parts. It should be atomic in that either it works or it fails. More parts = more possibility of failure....plus its still just poor design

      And web services are triggered too, not running in the background (as you know)

    9. Re:Correct me if I'm wrong by jericho4.0 · · Score: 1
      Flash is, and will be, showing up in all kinds of places. As long as it's just the UI, it's not an outlandish choice for a medical app.

      --
      "A language that doesn't affect the way you think about programming, is not worth knowing" - Alan Perlis
    10. Re:Correct me if I'm wrong by Anonymous Coward · · Score: 0

      Are timers a good design though? This sounds somewhat kludgy compared to a full blown windows service. (Not flaming--just limited knowledge of J2EE. My workplace uses .NET and LAMP)

    11. Re:Correct me if I'm wrong by rdean400 · · Score: 1

      I would question the architecture of a system that requires push updates to the client. There are other reliable ways to achieve the desired results. This is the reason PointCast got marginalized.

  71. Sadly by motionb · · Score: 0

    Microsoft is in EVERY hospital around here in the south. I know from New Orleans to Mobile anyway. And kind of suprising to me is that we have over a dozen large casino resorts here on the Mississippi Gulf Coast, and EVERY one of them is Windows and AS/400 based. With windows on every desktop, and usually windows running terminal emulator to communicate with the 400. My company writes software for Hospitals and Casinos and the programmers we just hired are doing everything in .NET But from talking to these IT managers, alot of them are older guys, and dont know much about linux, and dont care. I have talked to virtually all of them about linux based solutions and none of them were interested. I was really surprised. That being said, these are just hospitals and Casinos in my area, and not nation wide. I would like to think thats not common everywhere. It was like pulling teeth to convince my company to let me build them a linux web server to handle our email and website and keep it in house. Literally took me a couple of years of talking to finally get it done.

  72. well... by domenic+v1.0 · · Score: 5, Informative

    Both .NET and J2EE are good platforms for developing and hosting business applications. Both support n-tier architectures via client- and server-side component models for assembling enterprise applications. This allows for use of either fat or thin user interfaces with both platforms. However, .NET and J2EE are far from identical, and each platform has distinct strengths.

    The primary strength of .NET is its use of multiple programming languages running on a single platform. This eliminates the programming language as a barrier for adoption. Further .NET strengths include ease of use and speed of development as programmers might be transitioning from COBOL or C. (In contrast, transitioning to Java usually takes greater skill in object orientation.)

    J2EE takes .NET's multiple programming-language/ single-platform paradigm and turns it around: The primary strength of J2EE is its use of a single programming language capable of running on multiple platforms. This eliminates the platform as a barrier for adoption. Further J2EE strengths include vendor neutrality and the active involvement of a large, open-source community.

    Legacy applications: Can either platform make integration easier?
    Healthcare providers are moving from traditional reliance on paper-based records and isolated legacy systems. Most now embraced more systematic electronic exchange of patient data, exchanged both within and across organizations such as other providers, diagnostic and laboratory test facilities, managed care organizations, etc. Creating and maintaining patient records requires the ability to extract and integrate patient data from a range of "legacy" document and system formats. legacy applications constitute an even more difficult integration category. Consider a host application that was developed in-house 20 years ago, and written in COBOL. No J2CA resource adapters are available, nor will they be available, to help integrate these applications in a J2EE environment.

    From an integration standpoint, JDBC is actually more promising than J2CA. This API provides access to virtually any data source, from relational databases to spreadsheets and flat files. With a JDBC driver, all corporate data can be connected, even in a heterogeneous environment. In addition to its support for actual relational databases, JDBC can also support emulated relational models based on legacy information sources. But to do this, JDBC requires an integration product that can map the legacy-application functions to emulate a relational database model.

    The .NET platform, with its dependence on Microsoft BizTalk Server, has the same drawbacks for legacy-application integration as it does for packaged-application integration. So, despite the very real integration potential of .NET and J2EE, both platforms have their associated limitations. And when it comes to legacy-application integration, neither platform can complete the job on its own.

    Be aware that all vendors of application integration products do not provide equal support for .NET and J2EE. Many vendors have built their solutions exclusively around one platform or the other, heedless of the fact that both .NET and J2EE will still be the strongest presence in the years to come. Buying an integration product too hastily can tie your organization to a development platform they might not have chosen otherwise.

    Therefore, you should look to application-integration vendors that are closely aligned with--and can articulate a long-term strategic relationship with--both .NET and J2EE technologies. That means checking to ensure that a solution offers interfaces such as .NET Class Libraries, COM Objects, ASP, ASP.NET, and .NET web services to support your .NET-based development efforts as well as interfaces like JavaBeans, JSP, and Java web services to support your J2EE-based development efforts.

    1. Re:well... by Anonymous Coward · · Score: 0

      I stopped reading your post when you made the "but .NET can use multiple languages" part.

      The Java platform supports WAY more languages than the .NET platform.

      http://flp.cs.tu-berlin.de/~tolk/vmlanguages.html

      Oh, and Java's language support is typically much more mature. Look at Jython vs IronPython for an example.

    2. Re:well... by Ogerman · · Score: 1

      In contrast, transitioning to Java usually takes greater skill in object orientation.

      I count that as a benefit of Java, hands down. Java itself and the surrounding tools lend themselves towards proper object oriented design. Honestly, a programmer who isn't already OO savvy is not who you want to develop your enterprise software. Send them back to school or find somebody else. This is the 21st century folks. Unless you're doing low-level coding, you should be using proper OO design.

    3. Re:well... by ergo98 · · Score: 2, Informative

      The "multi-languages" feature of .NET is a superficial feature, and it most certainly isn't the most important feature. As others have pointed out you certainly can do the same thing with Java.

      The .NET platform, with its dependence on Microsoft BizTalk Server

      Dependence? Biztalk is one possible solution for data-integration, but .NET certainly doesn't "depend" upon it -- you're fully capable of wrapping your own (which many do), and of course if you want to access data you have the massive library of OLEDB/ODBC drivers. You can even simulate a relational database using Datasets and overloads.

    4. Re:well... by wjsteele · · Score: 2, Insightful

      I stopped reading your post when the website you refereneced made the point, "I do not take any guarantee about the quality of software referenced here. Use at your own risk."

      The Java platform supports ONE language, Java. There are hacks that provide support to more languages, but NONE are supported by the platform.

      Oh, and Java's language support is typically much more obscure. Ever heard of Jython for example?

      Bill

      --
      It's my Sig and you can't have it. Mine! All Mine!
    5. Re:well... by Anonymous Coward · · Score: 0

      JDBC is actually more promising than J2CA

      Unless your existing system has no security or even consistency constraints at the database level... or any semblance of relational structure.

      you should see the immense pile of shit that is our DB - it has accreted over a very long time and it just keeps getting worse.

      I just stick to my Java and update my CV ...

    6. Re:well... by Anonymous Coward · · Score: 0

      - The .Net multi-language "feature" won't turn out to be a feature in the real world.
      - C# developers will take the time to Rewrite VB.Net because they don't like it.
      - VB.Net programmers will attempt to write very obscure VB to make this more difficult.
      - What you get in the real world is language wars.
      - C# programmers will curse VB.net's variant behavior, converting strings to numbers in method signatures, where, the C# programmer will expect the language to throw an error.
      - C# programmers will curse the VB.net programmers for their "relaxed" coding style. Watch out for Public Properties in classes.

      - pick .Net and see the parade of crazies.

  73. Coming from the healthcare industry... by databyte · · Score: 5, Informative

    I work for a company that just landed a large install to a large hospital system. Here are some points to consider.

    My experience...

    1) Don't worry about the run-time in terms of a desktop requirement. Since you'll have to install your software, you'll have the opportunity to install the VM.

    2) Getting security clearance to run on a hospital system will largely be dependent on your application architecture and not on your application framework. Do you depend on certain ports or services, certain databases, file shares, web services, etc.

    3) A majority (overwhelming majority) of these systems do run Windows. If you find Linux in the mix, it'll usually be for very specific systems (PAX/DICOM) or back-end work (your mainframes and such). Due to the large number of small vendors in healthcare, a ton of applications are installed to the clinican's desktop. (And may have simple architectures or older frameworks like VB, Delphi, and even Terminal/Telnet). Everything from intergrated hospital wide systems to what a doctor uses on his own box to manage X, Y, and Z. [hint: look-up CCOW]

    4) Integration with an EMR is important, and again, most are Windows based. If you want to feed data into "the system", be prepared to work with the system. EMRs are heavy on HL7, light on Web Services and XML.

    5) Depending on your architecture, your GUI/interface and your "server" can be running on different systems, platforms, and/or frameworks. Probably not the best route but it is possible.

    General knowledge and opinion...

    1) Mono (.NET) for non-Windows applications is just as viable as Java for multi-platform use. You could do .NET AND Mono deployments (or just pick one).

    2) Hospitals pay huge $$$ for integrated systems. As such, they will purchase hardware dedicated to your implementation. If your worried about running on their existing OSX servers, don't be - sell them a Dell running Windows 2003 or a black box running RH. Your software will be more expensive than the boxes. You could also just include $2-10K in hardware costs as part of the PO.

    I highly recommend going to a trade-show or just talking to vendors "as a 100-300 bed hospital". You can see what others do by being a customer.

    Not saying you have to do what everyone else does - but it does help to sell something that won't take a lot to get going.

    1. Re:Coming from the healthcare industry... by tongue · · Score: 3, Insightful

      I find myself wondering exactly how much experience this chap really has in this market, as opposed to listening to a bunch of people with real experience talking, since "PAX" is actually spelled "PACS" (stands for Picture Archive and Communication System) and HL7 is an XML-based protocol.

      That being said, if your target market is small physicians offices, don't worry about the runtime; the overhead of installing it to the workstations is indeed negligible. BUT, if you plan on targeting hospitals at all, the lack of a runtime can indeed be a great selling point. While writing a web-based PACS/RIS/scheduling (RIS=Radiology Information System) my company found that in the vast majority of installs, the clincher to the sale was the lack of a required executable install (except for the radiologists who were doing diagnostic reads) and/or the end-to-end integration of our system, which meant they didn't have to cobble together four or five different vendors' software using obscure export/import procedures that usually ended up as a post-it note on the monitor of the technician doing the job.

      on the choices of software: if you go with .Net, despite the great strides mono has made, you're going to be a microsoft bitch^H^H^H^H^Hshop for the foreseeable future. if you go java, get ready to deal with the fact that there are a lot of areas of it that are overengineered for your purposes. There are downsides to both, but there are just as many upsides to each as well. If it were me starting from scratch, i'd go with java, if only because i like eclipse as an IDE better. (and for the record, i agree with anyone who says that's a bad reason to choose a toolkit--but i'd make the same decision six days a week and twice on sunday :) )

      honestly, if you're intent on going into this area, go for the little shops first. hospitals are attractive targets for the big boys like GE Medical Systems, and they will eat your friggin lunch, right after they kick you in the balls just for fun. There's a huge market for smaller offices who can't afford an entry-level price of half a million for a HIS system but still need practice management. This is what the ASP business model was born to cover. Tell a doc you'll install for less than 5k, charge him 5 bucks a patient/study/unit of work/whatever but in doing so allow him to better track his expenses, increase his payments from medicare/insurance, see more patients in less time, employ fewer people, or whatever promise your software makes, and he'll be foaming at the mouth to buy whatever it is you're selling.

    2. Re:Coming from the healthcare industry... by kupci · · Score: 1
      I find myself wondering exactly how much experience this chap really has in this market

      That's giving him and his company way more credit than they deserve, they seem to have no clue about J2EE, .NET, web apps, and software design in general. and HL7 is an XML-based protocol.

      Well, that depends on the version of HL7, as HL7 predates XML, and has only recently switched to using XML.

    3. Re:Coming from the healthcare industry... by Anonymous Coward · · Score: 1
      MOD PARENT UP!
      </aolmode>

      I used to work for a PACS/teleradiology vendor. It's a pretty small world, chances are we've heard of each other's firms.

      I wouldn't rule the large hospitals out completely - GE and some of the other big firms can get pretty obnoxious (see: Siemens). A number of customers are looking for a bit more attention, and don't mind being the bigger fish in a smaller pond.

      But you are absolutely correct that the ASP (Application Service Provider, I'm sure someone read your post and saw another MS product) model is the way for smaller offices. We looked seriously at entering the market a few years back, and were convinced that the ASPs were going to take over. It's taken longer than I would have guessed, but there are several players out there now.

      And just to make it relevent to the original question, I think an ASP would really want to go J2EE - .NET hasn't penetrated as much into the major webapp space.

      BTW, don't harass the guy too much about PAX vs. PACS. This is an industry that has problems with its acronyms (see HIPPA and HIPAA elsewhere in the thread). My personal favorite is the covers of the official DICOM spec from a few years ago - they read Diagnostic Imaging and Communications in Medicine (it's supposed to be Digital). Even the maintainers can't keep things straight.

    4. Re:Coming from the healthcare industry... by databyte · · Score: 1

      Yeah - I always get those things messed up. I do a lot of work in Imaging of documents (TWAIN, Imports, File convesions) and less on the medical side (Rad, Card, DICOM, PACS, etc).

      The key to smaller offices is not thru HL7 (which is expensive to implement) but by "other means" such as import/export, direct access, etc. Having a platform like .NET allows you the flexibility to connect to many different systems. There's more plug-ins, toolkits, and third-party support for the Windows platform (in general) due to the number of vendors out there. This includes DICOM Image Toolkits, HL7 Engines, etc.

    5. Re:Coming from the healthcare industry... by databyte · · Score: 1

      I take no credit, just opinion and advise that can easily be ignored (that's why your holding the mouse).

      I've done Java2 and currently do .NET.

      HL7 v3 is XML but still has gaps. The full spec isn't done yet but they're getting there. The RIMS are long, complicated, and changing.

      State-side, most vendors continue to use the older 2.x versions (2.3-2.4 mostly) since engines/interfaces are expensive and everything's backwards compatible. Even though the 2.3 spec was approved as an ANSI standard in 1997, most people still use it.

      Here's your typical argument:
      1) It costs hospitals a LOT of money to put up HL7 into production and most are experienced with 2.x to get it up rapidly.
      2) Hospitals aren't all new and those that are usually have experienced people who have come from existing hospitals
      3) Once a vendor has built something on top of 2.x and it works, what's the incentive to use 3.0 with XML for the exact same functionality.

      So just because a hospital CAN get XML with 3.0 doesn't mean they will. Not sure about you, but I've been to several different hospitals - have you noticed how many screens are still green and black? It's because it works!

      Don't shoot the messenger :)

    6. Re:Coming from the healthcare industry... by Eneff · · Score: 1

      Oh, and let's not forget that HL7 compliance doesn't necessarily mean that it can communicate with another application that is HL7 compliant.

      What a piece of hell...

    7. Re:Coming from the healthcare industry... by sribe · · Score: 1

      HL7 is an XML-based protocol

      HL7 predates XML by decades. The effort to extend HL7 to allow XML-based schemas is a recent development. So actually finding HL7/XML "in the wild" is rare, and you're lucky if your vendors are supporting it.

  74. Take a look at TAPAS. by Yaztromo · · Score: 2, Interesting

    Take a look at the Technology Assisted Practice Application Suite, which is based on Zope/Plone (written in Python), the jSyncManager (a pure Java (J2SE) synchronization protocol stack and toolkit for PalmOS-based handhelds), and some custom applications.

    This project is geared towards two areas: online access for medical offices, hospitals, retirements homes, etc., and handheld access using Palm Tungsten C handhelds. It uses open tools and open standards, and is released completely as Open Source. Phase One, currently under development, is implementing handheld management systems, security (both validation and encryption) calendaring, and messaging. Phase Two, starting Spring 2005, will be implementing patient data.

    Being open and using languages like Python and Java, the suite runs virtually anywhere. The prototype systems are running Debian, however I often do development and testing against a similar setup on Mac OS X (as I develop all of the handheld synchronization and management routines).

    Before you go out there and start writing soething similar from scratch, you might want to see if there are Open Source tools you can build upon and extend for your purposes first.

    TAPAS is, BTW, being developed in conjunction with a major university, a major hospital, a group of doctors, and a provincial Ministry of Health here in Canada. You might want to take a look at what we're doing before jumping in and starting from scratch yourselves.

    If you'd like more information, please feel free to drop me a line. In particular, if your company hasn't even considered the handheld side of your system, let me know as I have a lot of expertise in this area.

    Brad BARCLAY
    Lead Developer & Project Administrator,
    The jSyncManager Project.

    1. Re:Take a look at TAPAS. by Anonymous Coward · · Score: 0

      Being open and using languages like Python and Java,

      Java is not open source so it kinda contradicts for 'being open'

    2. Re:Take a look at TAPAS. by malkavian · · Score: 1

      I think he meant the application is open source. If he gives the source to the application, then it is open source, no matter what language you use to develop it.

  75. Application server performance and costs by Anonymous Coward · · Score: 0

    I worked for a Health care applications provider for about 2 years who had developed all their apps using Java JSP using a MSSQL backend and Websphere/IIS.

    I'd reccomend Java on an open source platform.

    The shop was happy with Java but their main application was badly limited by their MS system architecture and dependence on Crystal for reports. Essentially, between IIS and Crystal, the perfomance was so poor that it was practically a single user system.

    This was largely the fault of the shop being focused on "getting the demo running ASAP" and not paying close enough attention to scalability and the cost of scaling.
    They were trapped because due to the licencing cost of the servers, it was too costly to scale up the application and the hospitals would not pay for such an expensive backend.

    In the end they had to do a costly rewrite and move to open source.

  76. database and OS choice more important by humbads · · Score: 1

    I've been working on the same type of application for a number of years. Small doctor's offices don't have very complex requirements, so even plain old ASP or PHP will work. In fact, many of their functions could be handled by a generic portal application like Microsoft Sharepoint.

    I think the database and OS choice are far more important than whether you use J2EE or ASP.Net. Licensing cost and restrictions are directly going to affect your bottom line when you go to resell the software. Stop thinking from a short-term developer's perspective and start thinking long-term and from the physician's perspective.

    Have you looked at how complex Windows licensing is? Not only is it complex, but it is purposely ambigious so that people, being conservative, end up buying more than they need. Besides the drag of complexity, the standard Windows server licenses are limited to a certain number of users. The per-processor licensing costs are astronomical for a small business. Asking a doctor to keep track of how many users are using his application is another thing he/she would rather not be thinking about. Personally, restricting a machine whose hardware naturally can support thousands of users to a fixed number of users with hidden software settings I consider obscenely wasteful.

    Unfortunately, the application I've been working on is all in ASP, and so barring an expensive migration, it is locked into Windows. If I were going to build an all new application, I would be foolish not to build it on all open-source and free software. I'm not too familiar with J2EE OS and database options, but the combination of PHP, Apache, Linux, and PostgreSQL seems to be a winner. And during your development if you can contribute back to those communities, you will get a warm fuzzy feeling.

    Disclaimer: I'm partly your competitor, so take my advice with a grain of salt.

  77. Doesn't matter; HL7 bindings matter by Anonymous Coward · · Score: 0

    I work in a very large health care system. J2EE vs .net is not important -- nobody really cares what's on the back end. Most of the large institutions are going to a three-tier set up anyway (.net on the desktop, J2EE server side).
    HL7 support matters. Make sure all communications are HL7 and possibly DICOM if you are pushing images around -- that is the key. If you are HL7 compliant then the parts your build have a shot at becoming components used in the big shops. If you are rolling all your own stuff and pretend you will own everything cradle to grave then you'll never get more than a snicker from the shops that handle millions of pt visits per year. The standards are big and unweildy because they address many issues you probably would never dream of ... like this --- let's say your patient is on a CT scanner that breaks down in the middle of the scan -- how do you correctly manage the db/billing side of moving them onto another scanner?

  78. My Advice by Anonymous Coward · · Score: 0

    Before you start putting this thing together actually get a FUCKING person who will be using this system, sit down with them and discuss what problems they have had with med software in the past.

    I really hate the shit I am forced to use to fill out prescrpitions. We have a drop down list for reasons I am prescribing the drug. That list has about 200 selections and the "other" field at the bottom! If I had more clout around where I work I would make the system only have the top ten reasons for prescribing each type of medication and then an "other" field, not this everything under the fucking sun stuff I use now. I swear we have had more problems after we started using medical computers. All I want is a few features that let me be as flexible as need be, not this "we have everything under the sun so you will never need to enter anything outside the options we chose" Doctors hate that crap. Sit down and talk with someone who will use what you are trying to make, that will make the picture 1000x clearer.

  79. Moses Cone Hospital in NC by Anonymous Coward · · Score: 0

    The main applications here are delivered to windows desktops through citrix servers and are written in Java. We are looking toward making our new desktop purchases Linux based due to the reduced cost so continuing in Java will be what our software vendors will likely have to do.

  80. Java by Anonymous Coward · · Score: 0

    I'm tired of those things like ".NET is as good as Java" .NET is there Java was 4 years ago, but not portable. You just can't compare ADO.NET with JDBC (not I'm not mention Hibernate, JDO... erh... CMP?).
    With upcoming NET 2.0 well maybe... My bet is for Swing Webstart/Applet Client and JBoss/Hibenate connected by RMI/IIOP and Any DB you wish (even MS SQL not so bad with JTDS driver :-)

    (The only thing I could imagine for .NET - some dumb simpe web pages with simple db access ;-)

    Lazy Coward.

  81. Specs?? by CobwoyNeal · · Score: 1

    Is this going to be a ginormous database, or a relatively small one (local office keeping track of appointments)?

  82. For what it's worth by Anonymous Coward · · Score: 0

    My line of work is in the financial sector, which has similar (though not as strict) privacy/security regulation as the health industry. We're a Java shop partly for this reason, and I think it would work well for your needs.

    As far as the customer preference goes, don't sell the technology: sell the solution. Bundle your app with MySQL/PostgreSQL and JBoss/Tomcat and make it painless to deploy. Make it easy to substitute in the customer's preferences (Oracle/DB2 and Websphere/Weblogic) so you can make the sale to those shops which have already invested in such technology.

    When it comes down to it, the IT guys will get outvoted by the business. We know it's true, we live it everyday. Deliver on functionality and provide a solution that doesn't require tons of infrastructure to be in place and you will be in a good position.

  83. What I've noticed by Anonymous Coward · · Score: 0

    As a previous employee at a large university medical center in charge of Neurology and Neurosurgery, I can tentatively reccomend Java as a development language. Most of my machines I supported were Windows based, but a lot of doctors refused to relinquish their Macs. Also, for a lot of the research nurses and secretaries, a number of the systems used for scheduling and patient tracking were run from large Solaris installs that were accessed first from a client machine via terminal services and then from the terminal server via X into the actual system. It was extremely convoluted, but having all the X setup on a central server made administration and support relatively easy. In the research labs, we had everything from Macs running OS 9 and X, as well as Linux and the rogue Irix machine around. I guess it is really up to you on what size hospital you will support, as I imagine a lot of smaller ones are Windows only, but in the University environment, where doctors are training to be out in the field, they were exposed to a wide variety of systems and are capable of handling just about anything you throw at them.

  84. From my expierience... by paradoxmember · · Score: 2, Insightful

    Speaking from expierience, I worked several years as an IT Manager in the healthcare industry in Connecticut, the most important thing I was forced to consider was ease of use and speed. While security is always a concern, it sometimes had to take a backburner to speed and just plain old usability.

    I cannot speak for other healthcare industries in other areas, but we were a 100% Microsoft shop with the exception of our Web Server. Almost every application that I looked at in my time as IT Manager was a windows based application. I have no problem with Linux, and I personally prefer it, but not many crossed my desk. I would say about 95% of the applications I saw were Windows based Apps.

    Perhaps the best thing for you to do would be to try and do some research on your target audience (Hospitals, VNA's, Single MD Practicioners, Multiple MD Practicioners, Walk-in Clinics etc.) and if possible find out what type of servers / software / brands they are currently using. You are going to get some people that will not give out that information but some will, and it is all in how you approach it that will get you that information.

    In the end I think you are going to find that it would be better to go with the .Net as that is what, from my expierience, is going to get you the most market share. Make it run quick, and by all means make it simple to use.

    Brian

  85. .NET definitely works! by dantheman82 · · Score: 3, Informative

    Upfront statement:
    I'm a Student Ambassador to Microsoft, I've been promoting .NET on campus, and am currently not paid for this position. So, in a nutshell, I basically promote the technology because I really like it. However, I think Java's pretty cool too.
    My thoughts are that yes, it will definitely work in .NET - I've seen even some grad students putting together a pretty awesome application in C# .NET for a programming competition that was aimed at the health care industry and had great acceptance with the hospital. The development time is quicker (especially in VS.NET), there are definitely security/cryptographic libraries implemented, and there is a huge open-source community built around .NET programming.

    Also, the .NET framework has been ported in a large part to *nix with the Mono project and has been used quite successfully in Munich which has recently ported to Linux by a company called Volcker.

    I've developed GUI applications in both Java and .NET and .NET was much faster and much cleaner as well. Plus, you can inherit from old C++ classes and leverage existing code/libraries in your new application.

    --
    This sig donated to Pater. Long live /.
    1. Re:.NET definitely works! by CtAhBeAbNoAy · · Score: 1

      Quit drinking the company punch!!!

      Everything you stated above (security, open source) exists for Java too. And this slow vs fast stuff is complete crap. I am currently on a .NET project and have written Java apps in the past and their is NO difference - especially when talking about the web.

      You were upfront with were you come from (I applaud that), but please quit with the hype. It's embarassing.

    2. Re:.NET definitely works! by Anonymous Coward · · Score: 0

      "Plus, you can inherit from old C++ classes"

      That would be a sight to see, so you just subclass them eh?

      At Microsoft, the lies tell you!

    3. Re:.NET definitely works! by dantheman82 · · Score: 1

      A few other things:
      1) I currently use Firefox (not IE)...
      2) I know how g++ works and have installed and used Linux
      3) I say Java/.NET are pretty comparable in the web, but he SPECIFICALLY mentioned a "rich desktop client", and not a web app. C# definitely outruns Java in both development time and performance (especially in Windows but also in *nix as I mentioned before)
      4) I do NOT want to work for Microsoft (or Linus and his gang) - I like to keep some objectivity.
      5) For what it's worth, ASP.NET v1.1 leaves a bit to be desired but ASP.NET 2.0 looks quite promising (having looked into the beta). I can't compare with J2EE but I'd guess they are fairly similar or quite possibly more mature.

      --
      This sig donated to Pater. Long live /.
    4. Re:.NET definitely works! by abigor · · Score: 1

      1. Okay.
      2. Okay.
      3. XMLRPC and SOAP mean you can write the client in whatever the hell you want. Write it in C++ with Qt, if you like (which is probably what I'd do). C# isn't faster than Java, either. Sorry. Although, Swing does suck, but who uses it? SWT is great.
      4. Okay.
      5. You're out to lunch. Do you have any idea of Java's penetration? Some of the largest enterprise apps on earth were written using the J2EE framework (Ford, Coca-Cola, HSBC, etc. etc.), and you're saying the unreleased, "promising" ASP.NET 2.0 is "more mature"? Grow up, kid.

    5. Re:.NET definitely works! by Aquila+Deus · · Score: 1

      I've developed GUI applications in both Java and .NET and .NET was much faster and much cleaner as well. Plus, you can inherit from old C++ classes and leverage existing code/libraries in your new application.

      .NET is definitely better, but the WinForm is really a piece of crap, nothing more than a ugly wrapper of the 10+ years old windows GUI. It looks good because (and only because) there is a form designer in vs.net and those who use it simply don't know anything else.

      --
      hmmm... dumb...
    6. Re:.NET definitely works! by KC0A · · Score: 1

      After a year working with C# and .NET, my opinion is that it is not ready for prime time. The .NET documentation is about the worst I've seen in 25 years in software development. The Windows forms controls are as pitiful as ever, still with no layout support worth mentioning. I suppose it's a great technology for letting mediocre programmers cobble together small applications, but for large applications it's pretty horrible. And ASP pages are even worse. Why you would want to make web pages as crappy as Windows forms is completely beyond me.

    7. Re:.NET definitely works! by jerdenn · · Score: 1

      5. However, on-topic, while J2EE has a rather large presence in the business world, there really is very little J2EE in the Healthcare arena.

      I'm speaking from experience, as I've been in this niche for some time.

    8. Re:.NET definitely works! by bonch · · Score: 0

      After all, Java has no visual designers that are wrappers for the host widgets. Java programmers are so experienced that they don't need them--they write all their GUI code from scratch. Everyone carries their personally-written GUI libraries everywhere they go on special CDs in their backpockets, which they bring out on dates. It's like a giant penis in your pocket, and it drives the ladies wild.

      Thank you for your information.

    9. Re:.NET definitely works! by Aquila+Deus · · Score: 1

      After all, Java has no visual designers that are wrappers for the host widgets.

      There is no "visual designers that are wrappers for the host widgets". Winform is a wrapper of the ancient windows GUI (which looks exactly like OS/2's presentation manager).


      Java programmers are so experienced that they don't need them

      Agreed :)

      --
      hmmm... dumb...
    10. Re:.NET definitely works! by Anonymous Coward · · Score: 0

      You bastard!

    11. Re:.NET definitely works! by abigor · · Score: 1

      Yes, that's fair enough. I was responding to the original post comparing J2EE to ASP.NET 2.0. Thanks for the clarification, however.

    12. Re:.NET definitely works! by Anonymous Coward · · Score: 0

      Winform is a wrapper of the ancient windows GUI (which looks exactly like OS/2's presentation manager).

      WinForms is a new implementation that emulates it. In fact, .NET 2.0 is finally going to give us a bunch of new default widgets that most people were writing for themselves as custom code. Go read up next time.

  86. Hospital Technologies by Anonymous Coward · · Score: 5, Informative

    FYI, here is a list of common technologies you will see floating around a typical community hospital:

    operating systems
    digital HP Unix
    AIX
    VAX/VMS
    Solaris
    Windows 3.1, 95, 98
    Windows NT, 2000, XP

    programming languages
    Mumps (ala the 'M' database)
    CCL (fourth generation SQL-esque language)
    SQL (a very little bit)

    databases
    oracle, oracle, oracle
    some SQL

    First of all, you have got to understand your (potential) client. Therefore, you need to understand FDA regulation of healthcare equipment, and of the HIPPA regulations. Because of FDA regulations regarding healthcare equipment, it often takes years (between 3 and 5, on average) for a piece of medical equipment to be designed, tested, run through trials, and (hopefully) approved. On the other hand, hospitals have a very steady stream of revenue, charge lots of money, generally have massive amounts of cash flow, and have major assets (like CT and MRI scanners, for instance). Therefore, it's common for a hospital to invest $1M for a new CT or MRI scanner at least every 10 years. However, that scanner had better be a workhorse for the hospital.

    So, what this means for you as a developer is that most hospitals still have legacy systems in production that date back 10 to 20 years. As a systems administrator for the department of radiology at a local community hospital, my production environment involves:

    > a Maxifile VMS/VMX terminal server running an 'M' database programmed in 'MUMPS'
    > 6 oracle database servers which 100+ non-admin end-users log onto each day
    > a remote-hosted oracle database which sits in Kansas (ala Cerner Corporation), which everybody at the hospital must access via a Citrix box.
    > a nuclear magnetic resonance imaging scanner running VAX/VMS
    etc. etc.

    So, to make a long story short, if you want to develop products for the healthcare industry, you had better start thinking about how to interface with products from Oracle, Citrix, Cisco, Microsoft, and so forth.

    Also, Linux is generally avoided in hospital settings. It requires too much computer knowledge (remember that hospital workers are healthcare providers, not information technology developers). More importantly, it's usually impossible to hold the developers accountable with Linux, and it's generally very difficult to obtain support contracts. All things considered, I have 1 linux machine in production, 200+ windows machines, and about 30 unix variations (AIX, VAX, HP Unix, DEC, Solaris).

    So, all this being said, I think that you're barking up the wrong tree and not necessarily asking the right questions. Personally, I would suggest J2EE over .NET.

    If you really want to start asking the right kind of questions, you could start with questions like 'should we start by developing an HL7 sniffer or a HIPPA auditing & compliancy application'? You would then find, either way, you will need to know Cisco (TCP/IP stacks), Oracle (SQL database connectivity), and HIPPA legal concerns (e.g. need for cryptography). In the end, you'll realize that you can do it in either J2EE or .NET, and that the question is kind of a moot point.

    anyhow, just my $0.02

    1. Re:Hospital Technologies by Anonymous Coward · · Score: 0

      I've been working with hospitals and other health care providers for a while. The Mumps mention above is key - there's still a lot of that out there. Consequently, there's a lot of large systems written in Intersystems Cache (intersystems.com), which is kind of the follow on to Mumps - runs on Windows, VMS, AIX etc.etc. and includes native hooks to web services standard interfaces.
      It's also pretty cool.

  87. Why bother? by Anonymous Coward · · Score: 0

    Okay... so from the MASSIVE listing of replies here, this is old ground. I myself have researched this extensively and have found hundreds of companies that are implementing a solution similar to this or are in the process of doing so. This also inclues a number of open-source solutions to the problem. Unless you can truly bring something interesting and new to the table, (and I assure you that finding new and innovative ideas without a tremendous ammount of work in this industry will be *very* hard), why develop something with such a limited market that's saturated with incumbant service providers?

    As far as the debate over a: or b: well, it's truly a function of what you and your guys will have the best speed with and what you can support easiest. Both platforms are robust enough to do the job well. It's just all those other factors that get in the way such as the client's needs and the overall cost of developing on wither platform which I won't comment on here as it has already been laid out in full above.

  88. Java v. .Net by Anonymous Coward · · Score: 0

    From having used both, I would say that Java is more mature, but .Net has some easy-to-use APIs and IDE features. Java can have a more difficult learning curve, and can take more time to get it right if you aren't experienced. I would use Java, but if you have more experience with .Net, I would go with that.

  89. Don't reinvent! by _Bucktooth_ · · Score: 2, Informative

    Instead of re-inventing the wheel, get involved in open-sourced solutions. You can find a good list here.

    From this list, I have personally only seen VistA which has been used by the Veteran's Affairs Department for a very long time. Certainly long enough to mature. It's scalable and will work with groups of hospitals. It's designed by Doctor's to fit the way they work and it's easy to use (so Doctor's have told me). It's open source, and there's a community web site.

    There are cons though: It uses a little-known programming language called M, and although otherwise complete, does not have a module for paediatrics (it's very hard to find child veterans!). The people I have met have been extremely helpful, however, and will help you with any customization or new capabilities.

  90. For Healthcare... by Anonymous Coward · · Score: 0

    Try this J2EE app -- it does 99% of what you need, just customize it for your locale, and let 'er rip:

    http://www.pega.com/ProductsServices/HealthcareApp lications/HealthcareApps.asp

  91. Lets break down the platforms by FunOne · · Score: 1

    J2EE
    Windows, Linux, AIX, Solaris, OSX, etc .NET
    Windows

    J2EE
    x86, x86_64, Sparc, PPC, Alpha, IBM-Mainframe (quasi PPC) .NET
    x86 ..... x86_64 coming? Maybe.

    So you can develop your software in J2EE, use the free Eclipse IDE, on a free operating system, with a free application server (JBoss). J2EE has years of experience and large scale deployments as well as numerous books of reference and scads of talented, experienced developers. You have a choice of platform unrivaled by .NET.

    So, wait, why program in .NET?

    The only thing JAVA is remotely 'slow' at is on the GUI side of things, and that really isn't much of an issue these days (thanks to faster computers, better swing, and SWT).

    --
    FunOne
    1. Re:Lets break down the platforms by mark-t · · Score: 1

      SWT isn't really portable though... or more specifically, it hasn't been ported to an equal degree on all platforms that run a current version of java.

  92. His arguments don't make sense by Anonymous Coward · · Score: 0

    His argument is that most desktops he has seen in hospitals already run Windows

    "Most" already implies that his solution won't work in all hospitals, while yours will. Furthermore, the reason he gives isn't a reason at all - it's trying to ward off accusations of lock in.

    Even if all the desktops ran Windows, that wouldn't be a reason to use .NET, that would simply be less of an advantage to J2EE. The advantage is still there of course, because there's no lock-in with J2EE.

    the development time will be cut down for this small to mid-size project

    Where is he getting those numbers from? If all your developers are experienced with .NET and none with J2EE, then it's reasonable. If it's just something he read on microsoft.com, it's not.

    rich desktop clients are possible

    The same applies to J2EE, so you can throw that point away instantly.

    there will be no application server costs involved.

    There are Free application servers available that do the job quite nicely.

    He also contends that .NET has more templates and abilities than J2EE (which is simply 'web targeted' in his opinion.

    He's arguing from a position of ignorance. He's comfortable with .NET and he doesn't know much about J2EE. Unfortunately, the kinds of managers that are willing to argue when they don't know the facts are usually the hardest to educate. Figure out his complaints with J2EE, and then show him that he is wrong (diplomatically) in specific terms, relating to specific products and components.

  93. Just use Qt by Anonymous Coward · · Score: 0

    Cross platform. Easy development. C++.

  94. You may want to look at Nexaweb by Anonymous Coward · · Score: 0

    Nexaweb technologies has a rich client/J2EE solution you may find interesting. http://www.nexaweb.com/

  95. .NET or J2EE? Here's the answer! by standards · · Score: 1

    Our small southern shop (an eleven man team) is about to commence development on some medical software geared for physician's offices and hospitals.

    I assume that you're delivering a product, and that you have some previous expertise and previous experience building a somewhat similar product in a different field.

    If so, my first answer would be to "do what you're an expert at". Why screw around with technologies that you all aren't expert in?

    Is this an "old fashion" attitude?

    You bet! You're there to deliver a successful product, not learn about the production issues of a .NET or J2EE environment that should have been caught at application design time.

    Evidently your 11 person team is a technical team that has been built to deliver successful products. Use their expertise. Enhanse that expertise. Don't abandon it, and don't think that since you're great at one technology that you'll immediately be able to switch to another environment with any measurable degree of success.

    If you're looking for an opportunity to learn new technologies - great! Just make it a minor part of the system, and make sure you have an "escape route" if it doesn't work out the way you hope it will.

    PS - My ex-girlfriend's shop (she's an MD) runs both Windows and Unix on the back end. The IT folk treat applications like a black box - they don't care what application server you use - and they won't be messing with it. But I'm not a global expert on Hospital infrastructure and IT practices.

    PS - I don't think it matters if you're a southern if you're planning to sell outside your regional medical area. However, if you plan to sell to a particular hospital, then it very well could matter how you build your product.

  96. What do you know? by CtAhBeAbNoAy · · Score: 1

    Just choose the option that you have the most experience in. The marketing hype is just that: hype. I have had the experience in designing solutions in both and basically both are almost the same.

    If you have more developers with experience in Java, then choose it. Same goes for .NET. There are still more open source tools for Java (Hibernate, Ant, etc.) but the .NET versions are not far behind (NHibernate, NAnt).

    I still prefer Eclipse to Visual Studio.NET, but really you will get more "bang for the buck" if you don't have to go through a learning curve.

  97. For healthcare? by roman_mir · · Score: 1

    No matter what you use, they will all die a horrible terrible slow and painful death.

    Why do they come to me to die? Why do they come?

  98. Hopefully you cross-posted by ajp · · Score: 1

    on blogs.msdn.com. That way you'll get answers on both sides of the religious wars.

    (Go ahead, mod me troll. I'm already married so I don't have to impress anyone anymore.)

    1. Re:Hopefully you cross-posted by Anonymous Coward · · Score: 0

      You tried to impress a future spouse on /. ? for shame...

  99. Look at Cerner by geekp0wer · · Score: 0

    Cerner, one of the largest vendors in the clinical marketplace, is porting to Java and Websphere right now. Their java base product should hit in 2006.

    Think about the reasons they would choose Java. If they go with .net then they are tied to a M$ OS and M$ tools. By developing in Java they can run on M$, Linux, UNIX, OS/390. Their code will scale and will port when one or more of the platforms is no longer popular or effective.

    So you need to ask yourself. Are you targeting low hanging fruit or planning to grow and have your code grow with you?

  100. Re:.NET vs Java - The Bad vs. the Bad by Lysol · · Score: 1

    Both systems have snags.

    While Windows people might not see it this way, I think being limited to just one platform is not a very long term development solution. While .NET is here to stay, who knows what it will cost to continually develop with it (past experience tells me much more than on Linux or a Mac). Plus .NET is somewhat new compared to J2SE/J2EE. And, while Java isn't 100% secure, I'd feel a little nervous building on something with the security record that Windows has. While Java's sandbox isn't perfect, it's prob a safer bet than .NET.

    Also, I don't see single language an issue. C# people will stay there, Java devs will stay with Java. However, Mono being the only compatible solution to .NET probably isn't the best thing either. With Java at least you have many choices for app servers and even hardware/os environments whether it be Linux, Mac, Solaris, or Windows.

    I've gone thru these things in the past and I feel much freer dealing with Java than I ever have with Microsoft. I don't feel Java is necessairly slower than .NET and with SWT, you can even have the look and feel of Windows on Windows instead of the fugly Swing look.

  101. Forget .NET or J2EE by Anonymous Coward · · Score: 0

    Real programmers use Perl, LISP, or Python. Paul Graham even said so.

  102. Cross-platform and server-centric, please! by peacefinder · · Score: 1

    Design for easy HIPAA compliance. Will the system gather, use, or store Protected Health Information? If so, make it operate such that as little of the PHI as possible is even cached on the desktop machine, and that the desktop machine stores none of it.

    Platform-independece is nice. I am stuck with a vendor who provides windows-centric products. My docs have Apple laptops, and want to use the apps. :-/ You could make platform-independence a major sales feature.

    Most small to midsize clinics do not have IT staff. Maintaining application and/or terminal servers is probably easier for such a clinic than maintaining many windows desktops. They're used to maintaining an accounting server; your app server is an easy addition.

    --
    With reasonable men I will reason; with humane men I will plead; but to tyrants I will give no quarter. -- William Lloyd
    1. Re:Cross-platform and server-centric, please! by good+soldier+svejk · · Score: 1

      Even in large hospitals this can be an issue. Researchers pay their own way (grant money), and often quite a bit more. You can count on a Macintosh populations more or less directly proportional to the size of your research community. Also a few GNU/Linux workstations and the odd OpenVMS or Beowulf cluster (no kidding, I once found an unsanctioned Beowulf cluster in a lab).

      --
      It is cowardly, and a betrayal of whatever it means to be a Jew, to act as a white man

      -James Baldwin
  103. Follow up questions.... by Anonymous Coward · · Score: 0

    Thank you all for your help answering my Java vs .NET dilemna. As a quick follow up, now that I know which development platform we should use, do you recommend Windows, Linux or Mac?....now also I am looking for the best religeon for my family, would you recommend Judiasm, Islam or Christianity? Also me and my team of friends are thinking of voting, should we vote Republican or Democrat? -Annonymous User (Not a Troll, really)

  104. how much research have you done? by slapout · · Score: 1

    My senior manager recommended using .NET. His argument is that most desktops he has seen in hospitals already run Windows, the development time will be cut down for this small to mid-size project, rich desktop clients are possible and there will be no application server costs involved. He also contends that .NET has more templates and abilities than J2EE (which is simply 'web targeted' in his opinion.

    How many desktops has he seen in hospitals? What version of Windows were they running? You know .net only works on certain version of windows (I'm thinking 98 and above. Not sure about me).

    --
    Coder's Stone: The programming language quick ref for iPad
  105. Use a leveraged environment by almax · · Score: 1

    And that doesn't mean Struts. Spring seems to be popular. I prefer Open for Business (www.ofbiz.org). But don't go reinventing the wheel and don't spend your time writing JSPs.

  106. Why fuel the Microsoft monopoly? by raw-sewage · · Score: 3, Insightful
    Technical arguments aside, there's something to be said for not buying Microsoft simply out of principle. Why would you want to deploy a tool that is forever tied to one platform (Windows/.NET) and subject to the wily licensing antics of Microsoft?

    No offense to the Mono folks, but I just don't see them ever having 100% cross-platform capability. It will never be possible to seamlessly change your development and deployment environments from Microsoft.NET to GNU Linux/Mono. And if it ever does become that easy, Microsoft will be ready with some kind of nastiness (patent lawsuits, forced upgrades, etc).

    The group I work in writes custom engineering (design and anlaysis) applications for our company (Fortune 100). Some of these applications have been ported several times over the years as the flavor-of-the-week OSes/platforms changed. And today we're still porting applications to Windows using MFC! What happens when Microsoft obsoletes MFC, or Linux becomes the standard for engineering desktops, or even Apple starts supplying top-of-the-line technical workstations? We'll port again! But now is the time to take advantage of open source, cross-platform development environments.

    Spend your time working on a solution for your customer, rather than worrying about future portability issues. I just feel that if you go Microsoft now, you'll regret it in the future; I just don't see how anyone can make a reasonable justification for going with Microsoft and claim to have a solid long-term vision.

    Even Microsoft's lame slogan, "Where do you want to go today?" supports their obvious short-term approach. Today just isn't as important as tomorrow: I know where I need to be tomorrow; once I figure out how to get there, what I do today will naturally be right.

    1. Re:Why fuel the Microsoft monopoly? by 16K+Ram+Pack · · Score: 1
      Personally, I've been doing c# and .net and I'm looking at doing something else as well, either something OSS like PHP, or some Java. I don't want to be left stranded if Linux takes over (and it looks more and more like it will).

      I'm thinking Java is the best option for all the places it can be deployed and scale of uses.

      Any thoughts anyone?

    2. Re:Why fuel the Microsoft monopoly? by Anonymous Coward · · Score: 0

      Wow, again, a troll that's classified insightful. I'm starting to see this place as a VERY STRONGLY BIASED place that favors Java and it's brothers, while not even considering other technologies that are just as equally viable for this solution. Why don't you pull your head out of your ass and think about what your posting.

      And not buying Microsoft out of principle? What the hell are you smoking? This is a development world where you just pick and choose based on your client's needs. Not on the needs of "M$ is evil" rants and raves. Hey, they piss me off, too. But it's still a very viable solution, just as Java, PHP, [insert language here].

      Oh, and by the way, software is changing so rapidly, that there is NO LONG TERM SOLUTION unless you want to be left behind. It's call technology. It does these things.

    3. Re:Why fuel the Microsoft monopoly? by MemoryDragon · · Score: 1

      Well Visual Basic as it was was axed after around 7-8 years leaving thousands of companies with the fact of having to do major rewrites of their code. (I know one company which had to face the fact that the movage of their legacy VB code to VB.net came close to an entire reimplementation) Smalltalk has been around for 15-20 years and the only problem there really was was the Digitalk buyout (which in the end broke Smalltalks neck). The Unix core libs have been API stable for ages, and Perl and other languages have been rock solid as well, with Perl now facing its first major overhaul in ages. Face it only Microsoft can get away with screwing their customers over by breaking off old bridges, the Smalltalk vendors tried it and got a deserved smack on the head. IBM for instance knows this and they still support OS/2 an operating system basically dead for ages. Even REXX exist until today. This we do not leave you standing in the rain attitude is one reasony why people buy IBM. The breaking of legacy stuff is only a real severe issue in the Microsoft camp, not in others.

    4. Re:Why fuel the Microsoft monopoly? by kaffiene · · Score: 1

      I'd tend to agree. I've programmed in both Java and C#, and while I like C# well enough, political reasons make me not want to use it. Microsoft haven't even supported something as bog-standard as c++ very well and "side" technologies like VB and their Java version get either dumped or completely rearchitected (read "broken) between versions. You just can't trust Microsoft not to fuck up your code in the next version or make their APIs incompatible with earlier versions of their languages.

      It's not that what they produce is bad per se, just that life attached to the MS juggernaut is painfull.

  107. Let me save you some time and embarassment by Naikrovek · · Score: 4, Interesting

    I work for a very, very large insurance company with tens of thousands of employees, and several dozen million policy holders. At least 25% of the nation has auto insurance with us.

    We used .NET in the enterprise for a while, until Humpty Dumpty (.NET) fell off the wall and all of Microsoft's Men and Women couldn't put it together again. For two and a half weeks customers were without quotes, or access to their policies online, and agents couldn't sell new policies or make changes to current policies. Customers were furious, agents were foaming at the mouth in anger.

    Two and a half weeks. With all of "the Shining Stars" of Microsoft's .NET team flown in they couldn't get it working again for two and a half weeks. Eventually they had to rebuild the entire server room with new Windows installations on every server because they couldn't find out the problem. That might seem bad, but let me make note that the whole system was provisioned, installed, and maintained by Microsoft personnel. They broke it and they couldn't fix it for, say it with me, two and a half weeks. That should make it seem worse, but it still sounds better than it actually was.

    A decision was promptly made to drop .NET. We don't even get Visual Studio.NET installed on our development machines anymore. We have a very strong bad taste in our mouth from the whole .NET craze, which Microsoft is going very far out of their way to remove, without result.

    We use J2EE and are very happy with where its going. Sun has spent a great deal of effort working with us to transition, and their support has been great. Our J2EE stuff Just Works. It works wonderfully. We are very, very happy with it. I'm using short sentences here to get the point across that we are very happy with J2EE. We've been using it for our web services and as our main development platform. We train on IBM's WebSphere Studio Application Developer, and it also is a great (but expensive!) tool.

    I, as a developer, recommend J2EE. I do not represent my company in this recommendation, in case you work out who it is I work for. I am speaking totally on behalf of myself.

    1. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      I call "bullshit"

    2. Re:Let me save you some time and embarassment by DashEvil · · Score: 0

      You work for Sun?

      I kid!

      --
      -If God wanted people to be better than me, he would have made them that way.
    3. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      yah sure. Just ask jet blue how their .NET implementaion has gone. Smooth as silk.

      If anyone just has a problem with C3 and the .NET platform its Big Iron folks that just cant stand the idea of anyone using an MS developed platform for large scale jobs. Its time to wake up and get out of the cave.

    4. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 5, Insightful

      I agree totally. I used .NET at my previous Hedge Fund, and I use J2EE at the current one. It is night an day. Do you ever want to see a full stack trace (not just the couple of methods that the exception crossed before it was caught?), do you want to avoid .dll hell, do you want software that is efficient and has a collections API that wasn't designed by a 12 year old? If you answered "YES" to any of those questions, avoid .NET like plague.

      Since it's for a hospital, I assume that...

      1) It's server like, pushing around data and integrating with other systems.
      2) It really shouldn't crash.
      3) You'll probably have lots of home computers, terminals, etc.. as users. It might be hard to track them all down to get stuff upgraded, especially considering that doctors may not always have the time for you to screw with their computers.

      Seriously though, you just can't go wrong with J2EE. It'll run on anything, you can get pretty much any sort of appserver you want. You can get free appservers (JBoss), expensive ones (Websphere), or just embed your stuff in the database (Oracle) if that's what you think is appropriate. Java Web Start is a godsend for managing applications, and EJB will easily handle all your communications needs.

      I just can't stress this enough, .NET and C# is the best way to go if you want to use the Microsoft solution, but it has SEVERE CRIPPLING deficiencies. No coplete stack traces, nothing even approaching the scale or efficiency of something like JBoss, operator overloading that everyone loves to use (Ever see == throw a NullReferenceException?), the glories of COM (learn love Single Threaded Apartments), and half the examples are written in VB. I could just go on for days.

      This is, in fact the reason I quit my previous job. After trying to pound nails with a screwdriver for about a year (and getting roughly the progress you would expect from such an attempt), I threw in the towel and moved somewhere more sane. My life is much better now.

    5. Re:Let me save you some time and embarassment by sphynx4868 · · Score: 2, Interesting

      Save some time and embarassment by coding applications correctly? It is hard to put anything back together (platform and language independent) once a fatal flaw is discovered. The flaw most of the time derived from the developers...not the language. What was the internal problem anyway?

    6. Re:Let me save you some time and embarassment by Billly+Gates · · Score: 1

      Question

      Did you outsource your programing department to India?

      Seriously mistakes and problems happen but it sounds like a very very poorly made app.

    7. Re:Let me save you some time and embarassment by CreatorOfSmallTruths · · Score: 1

      Does anyone else find it unplausable that almost ALL "anonymous coward" posts in this item are microsoft-centric ?

    8. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      Could just be that anything that isn't rabidly anti-MS will get you a karma hit.

      Or are you one of those who see a conspiracy behind every post?

    9. Re:Let me save you some time and embarassment by EvilTwinSkippy · · Score: 1
      Dude, who cares.

      I've run into mystery meat problems with Windows. We were developing a 3D simulation way back in the days of Windows NT 4.0. Development was slow and plodding because, despite running under Java, and despite our best efforts, the program would blue screen the entire system.

      We spent months trying to isolate the problem. It would sometimes work, and sometimes not work. We would think the problem was solved and BAM.

      At the end of the day, we ported that app to Linux. Initially it was just an experiement. Same hardware. Same libraries. Same version of Java. The app ran perfectly every time. We spent less time porting the app to Linux than we spent debugging the windows version.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    10. Re:Let me save you some time and embarassment by ergo98 · · Score: 1

      What a colossal load of bullshit. Given how big of a disruption this is to what obviously would be a publicly traded company, could you point to some press releases about this issue? Somehow I suspect that you're not going to be able to point out one given how ridiculous your "one day it just stopped working!" nonsense.

      Does this sort of craptacular FUD make you feel better about your Java religion? Do you get a tattoo or something? Do you reach Level 5-Supreme Astroturfer?

    11. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      Seriously, on behalf of all of us whose PHBs are going this route, I would ask that you post more detail. We need cogent arguments backed up with measurable facts in order to convince the powers that be.

    12. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      > one of those who see a conspiracy behind every post?

      It would seem you do. To wit:

      > Could just be that anything that isn't rabidly anti-MS will get you a karma hit.

      Funny, I've seen a few pro- posts mod'ed up, even a few AC ones.

    13. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      You and your work-mates are bad developers. That should not tarnish the image of the .Net platform.

    14. Re:Let me save you some time and embarassment by sphynx4868 · · Score: 1

      I agree that Microsoft OS's have been very buggy in the past, and Windows XP carries on the tradition, but to a much lower extent. However, .NET is a totally new and different infrastructure - the server os's as well as the framework. So far in my 2 years of .NET programming experience in the corporate world, all is going good. I like Java as well, but have had bad experiences with the JVM running out of memory under Redhat and weird buggy issues with development. Either way both envoronments (.NET and J2EE) have their faults as well as their capstones. Java is portable(like you said) and .NET is flexible and fast (under windows, I have not tried mono). IMHO.

    15. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      Hehe, you can feel the Christmas love flowing. Did the guy touch a nerve?

    16. Re:Let me save you some time and embarassment by ergo98 · · Score: 1

      FUD is the enemy, whether it's against Linux or Microsoft. It's pretty sad when people need to contrive examples to support their religion.

    17. Re:Let me save you some time and embarassment by MemoryDragon · · Score: 1

      Probably the underlying platform caused the problem, windows tends to fall apart with various problems nobody can trace down properly (happened to us with something else Microsoftish a few weeks ago, the consultant could not fix it either we had coming in) Java really is better in this regard, very self contained and mature, you basically know where things are and they do not touch the underlying system, everything can be done and backuped in a very clean solution. If you need something stable you have to go for J2EE (subsets of it that is, I hate EJB) and you cannot go wrong stabilitywise. The problem with J2EE is that some parts are APIish overkill, the new JSF for instance is clearly designed for Rad buildners not for people who have to work with it on a sane level. To bad that the Rad tools are not there yet.

    18. Re:Let me save you some time and embarassment by Anonymous Coward · · Score: 0

      I cant believe the above anon troll was modded up + 5.

      Almost all of his statements about .net are totally false
      1) The .net collections api is much more flexible than the one java provides
      2) .Net was expressly designed to prevent "dll hell". In the java world we still have the complementary "jar hell" if you will and many people resort to storing jars in clearcase..Net also is most definitly not COM or VB.
      3)"Ejb will easily handle all your communications" is a completely moronic statement and nowadays we are getting entire books about why ejbs should be abandoned in favour of something more sane.
      4) "I gave up microsoft and now my life is much better". Do you guys seriously believe such statements?

    19. Re:Let me save you some time and embarassment by ednopantz · · Score: 1

      I cant believe the above anon troll was modded up + 5.

      You're reading slashdot. Anything that bashes MS, no matter how ignorant, is "insightful."

  108. OptimalJ by grsutter8596 · · Score: 1

    I work for Compuware, if you are at all concerned about ease of development and cost cutting you should consider using OptimalJ. This is basically a UML to J2EE application builder plus integrations for accessing legacy systems. It supports a wide variety of IDE's, appservers and databases. You can check out more at: http://www.compuware.com/products/optimalj/

  109. neither - use python instead by asapien · · Score: 1

    I would actually reccomend python instead, you can use all the win32 libraries, and when iron python gets mature you could recompile into .net, but the advantage with python is that you can use dist-utils to spit out a regular win32 binary, so your app can run on lowly windows2000 or even win98 machines, python supports a much larger subset of the older, cruddy machines they may be running at hospitals, but it would scale out for larger systems. You can use tkinter to create GUI apps that will run on windows, linux, osx, even mac os 9.

    1. Re:neither - use python instead by tanjavuru · · Score: 1

      We develop applications for health insurance (HIPAA compliant) at zeomega. These applications involve patients payors and providers alike so lots of PHI. we use FOSS platforms zope python ingres postgres mysql on linux runs like a champ , cuts down development time in half as python is easy to learn and program in. we used to do development on websphere before. not anymore. as far as .net goes ugghhh we dont want to wait for support on an 800 number helping some idiot thousands of miles away to fix his own bugs and dont even get me started on the security nightmare

  110. This slashcode site should help by cblood · · Score: 2

    http://www.linuxmednews.com/

    Medical software is one area where we should all agree that closed source code has no place. After all it is not like a life support system, it IS a life support system. Closed source code for medical applications is like selling drinking water in a life boat. It's wrong.

    And while we are on the subject, can anyone explain why we let the government mandate via hippa the use of diagnostic codes that are not in the public domain. Thats right the AMA owns the diagnostic codes that the government mandates. And we all know the AMA needs all that money from licensing.

    1. Re:This slashcode site should help by Anonymous Coward · · Score: 0
      Closed source code for medical applications is like selling drinking water in a life boat.

      No, it's like selling and guaranteeing drinking water in a life boat.

  111. Need extra stuff by TWX · · Score: 1

    I've seen plenty of programs developed in Microsoft environments that needed runtimes or extra "stuff". We have Foxpro, Access2, Access97, and VB apps at work that all require this crap. I wouldn't doubt for a second that .Net or any other Microsoft product would need extra stuff.

    --
    Do not look into laser with remaining eye.
    1. Re:Need extra stuff by Anonymous Coward · · Score: 0

      um, yea!! dork.. and we will expect your white paper on how to fix this... oh, wait you will need to actually learn something about .net first .. man, with the crap you have just listed you are becomming a little dated...

    2. Re:Need extra stuff by TWX · · Score: 1

      "...with the crap you have just listed you are becomming a little dated..."

      Normally I ignore Anonymous Cowards, but I'll bite for once.

      What do you think these users are running for hardware/software? Do you think that every medical office has updated to the latest release from Microsoft? I suspect that many of the computers are running Windows 98 or Windows Me, have 128MB memory, and are currently using some kind of 5250 or VT interpreter to connect to a central database for electronic records, similar to how insurance companies and school districts do it. Even those running NT or 2000 would have to install runtimes or other libraries to have any chance of using .Net, if such components even exist.

      Update to XP? That means new computers. That means probably six computers per small doctor's office, so around $6,000 all said and done for just the raw systems. Throw in modern productivity suites and the cost rises more, and that's not even counting the labor costs that a field service company is going to charge. Now throw in the cost of the new custom software, the support contract, the learning curve with the users, and the bugs found in the newly-written application and you find very few takers for the first versions. There's no point if what they already have works, is maintained, and does what they need even if it isn't intuitive.

      Organizations with numerous scattered branches or offices aren't that likely to switch if they're running big iron like an IBM or HP mainframe or mini which simply requires the branch to have a leased line and a 3270 or 5250 client. All diagnostic and repair of the system itself is centrally located, and workstations are a dime a dozen and all clones of each other.

      Keep playing with your toys like .Net, someday you'll grow up.

      --
      Do not look into laser with remaining eye.
    3. Re:Need extra stuff by Anonymous Coward · · Score: 0

      I'm most certainly NOT endorsing or even suggesting using .net (LAMP for me) but MS DOES in fact have .net "framework" (libraries and runtime) for W98SE- I know- it's the only MS OS I run (besides to try something else, or fix someone's broken MS junk.) I don't have the direct link, but if you run "Windows Update" it will be on a list of crap. Again, .net DOES exist for W98SE.

    4. Re:Need extra stuff by Scherf · · Score: 2, Informative

      All you need for running .NET apps is an implementation of the .NET Framework (be it the MS one or Mono).
      Yeah, that's extra crap but not more than you would have with a Java solution.

    5. Re:Need extra stuff by Anonymous Coward · · Score: 0

      What a dork. Another know-nothing piece of crap. Get a life, you loser.

    6. Re:Need extra stuff by arkanes · · Score: 1
      Well, here's the basic thing. You're wrong. .NET apps require, at a minimum, the .NET runtime. There's a core dependency, just like the JVM. Individual .NET apps may also require additional libraries ("assemblies"), just as Java apps would. Incidently, .NET provides excellent built in versioning support which makes some of the support horror stories you hear about Java go away.

      The .NET runtime also exists for older versions of Windows, down to Windows 98. .NET apps will run in 128 megs of ram, although they'll be slow just like thier Java counterparts will be.

      All your points about ugrading are reasonable, although not final (there's a whole shit-ton of problems with mainframe thin clients, too, it's why people are always upgrading away from them), but also totally unrelated to your flaming of .NET OR to the topic at hand. I'll assume that whoever he's working for has already decided that upgrading is in fact something they want to do.

      In summart: If you're going to flame a technology, you should probably make sure that you're right first instead of saying stuff like "Oh, I bet technology X doesn't have Y, therefore it sucks", which makes you look like a tool when technology X does in fact have Y and you're totally unable to articulate any of the reasons it actually DOES suck. Also, if you're going to go on a rant fest over a technology, stick to just that one topic, don't try to distract attention from your hand-waving by arguing tangents like "You shouldn't actually upgrade because your terminal emulators and mainframes are sufficent".

    7. Re:Need extra stuff by GuyWithLag · · Score: 1

      Minor correction: Usually, Java applications require only the JVM. Usually they come bundled with all their dependencies tailored to the specified programm. That is one part of the reason why they are considered bloated - a simple Java app may easily reach a 5-6 MB downloadable size. However this also minimizes dependency hell fore the user.

      On the other hand, I have personally been bitten by hidden interface and behaviour changes in public API from ove version of a library to the other (not the JVM or core libraries). That is a problem, and sometimes a serious one, but it is due to teh authors of the libraries, and not the JVM itself (which is very stable and backwards-compatible).

    8. Re:Need extra stuff by arkanes · · Score: 1
      Minor correction: Usually, Java applications require only the JVM. Usually they come bundled with all their dependencies tailored to the specified programm.

      This is also true for .NET applications - Visual Studio provides an excellent packaging tool that bundles up dependencies (taking advantage of the rich versioning that .NET provides, with signed assemblies). In both cases it's a function of the tools available for each platform, I think they're roughly equal with an edge to .NET for the versioning of assemblies.

      For example, the problem you describe wouldn't arise (or at least would be much easier to diagnose and resolve) in a .NET application, assuming that the library developer incremented the version number appropriately. In the Java case, while they may have chaneged the version number, it's awkward for the client application to check those numbers and it may not be able to do anything usefull anyway. MS has learned a lot about dependency hell over the years, and while theres not a whole lot they can do to fix it in Windows, .NET has really good solutions.

    9. Re:Need extra stuff by GuyWithLag · · Score: 1

      I may have not been very clear on my previous post. Java resolves the problem of DLL hell by bundling each dependent JAR (the library) with the application, which will provide stability (the version of the library used by the application won't change) at the cost of bloat (JARs are not shared across JVMs, sometimes a single JVM loads at the same time two versions of the same JAR, the same JAR is duplicated on disk in each application that requires it).

      Version checking is never needed in applications, as the environment of the application is controlled by the developer(s). Version checking is needed in libraries, but that is seldom needed.

    10. Re:Need extra stuff by Anonymous Coward · · Score: 0

      Win98SE???
      hahahahahhaa, what a religious geek.

      I run XP, even without a virus scanner. Never had a problem. (I run one once a year to make sure) and it's crashed twice in 2 years.
      Perhaps you are stupid?

    11. Re:Need extra stuff by Anonymous Coward · · Score: 0

      I do not know what you have against Java, but please think twice about what you suggest. Win98 + .NET runtime? WTF were you thinking? If you don't realize yet, try to read it out loud for god's sake. Win98 + .Net!!! freaking scary stuffs!!!!

    12. Re:Need extra stuff by Anonymous Coward · · Score: 0

      How often would you have to update your .Net runtime due to the security problems that will surely come regularly? .Net, a good solutions? BS!

    13. Re:Need extra stuff by Anonymous Coward · · Score: 0

      How many plane tickets would you have to buy to the US before you learned english? Dell tech support doesn't qualify you to make software technology recommendations.

    14. Re:Need extra stuff by ahdeoz · · Score: 1

      That doesn't resolve the problem, it avoids it. In essense, you are statically linking every library, (except --sometimes-- tools.jar) into every app. how many xalan-impl's does one computer need. Especially since a dozen apps each with a dozen megs for a library that most of them are using as a substitute for a .properties file, or maybe a very simple csv dataset.

  112. Java by the+eric+conspiracy · · Score: 5, Interesting

    The company I work for is in the process of porting all of it's VB (.Net predecessor) software over to Java. The reasons are pretty interesting.

    - Microsoft essentially obsoleted our entire company's code base when they introduced .Net, forcing a rewrite that will cost millions. Microsoft is infamous for churning its technology base, so they could easily do it again. Fool us once, we aren't going there again.

    - Java has been around for 10 years, with many fewer technology upheavals.

    - Java is multiplatform, much more so than .Net (Mono is not even close to be considered - one patent infringement lawsuit from MS and it is gome). Java gives us access to just about any platform we are likely to need to deploy to.

    - Scalability. .Net is famous for crappy performance on more than 2 cpus. Java runs great on big iron.

    - App servers - With MS there is one choice. With Java there are many vendors, with a vast range of product capabilities.

    - Development tools - Just as good, wider variety and often far less expensive per seat.

    - Maturity - best practices are fully understood, while .Net's use cases are not.

  113. Yikes by Anonymous Coward · · Score: 0

    How the hell does something this clueless get posted as a story???

  114. Before you start by AlricTheMad · · Score: 1

    Before you get started, head on over to LinuxMedNews.org

    There are many Open Source EMR projects that could use more help.

    Pat Evans

  115. Health care software by raginmonk · · Score: 1

    I work for a small home health care company that uses prompt 8.0 through Lewis for an outrageous amount of money. In my personal opinion small home health agencies need a scheduling program targeted towards them and not larger corporations. I know we are interested in something cheaper. Good Luck.

  116. Blame Cliff, for posting it by handy_vandal · · Score: 1

    you want to develop for a new vertical industry that you're not familiar with, you're not sure about your dev platform and you came to /. seeking objective analysis on a platform involving MS?? Well, you certainly deserve all the "PHP rocks!" and "11 lines of Perl are all u need" answers you'll be getting...

    Very true.

    But let's put the blame where it belongs -- on Cliff, for posting the post.

    -kgj

    --
    -kgj
  117. Doze in hospitals by wap911 · · Score: 1

    A few weeks ago I visited a friend a one of the four area hospitals, I now know were I don't want to be sick at. Each room on his floor had some type of monitoring equipment outside the door in the hall and was running standard Win2K Pro. Any OS that can run J2EE can run your app, but if you do it in DotNOT then your are fusked. To the opening statement I prefer a specialized piece of equipment run a specialized OS and software. BTW, I worked in the past with a company that produced a machine that stamped out metal sheets for parts moving 5 feet/second. The end user programers [engineers] often wrote bad that jammed the sheet clamps into the tool turret, requiring a 15 ton puller to remove it from the tool turret. So yes, any OS/app can fail but I do not want any application that is mission critical [including privacy under HIPAA, which I now am involved with} monitoring/controloing anything mission critical or private running anything generic from Microsoft.

  118. More importantly it is a toy language spec by Anonymous Coward · · Score: 0
    PHP4 was an incredibly deficient language design. Try using it after mastering a "real" language and you'll see how its non-design bothers you. Then there is PHP5. Improved, but arguably a different language entirely. This is fine, I have no problem with starting over where it makes sense, but PHP5 is still too new to recommend it for major "your ass is on the line" projects.

    I would recommend the developer go with the most mature performant stable tech that he is also experienced with.

    1. Re:More importantly it is a toy language spec by neuek · · Score: 1

      php5 seems just to be a copy of java.. pffft i've got no time for it. real men code stuff in perl :p

  119. Go web based. by Cow007 · · Score: 1

    I think that you have this idea laready, but i must steress the inpoortance of having a front end that can be accessed form a web browser. As a sidenote, why not use SQL and hardened PHP to do the back end?

    --
    411 Y0UR 8453 4R3 8310NG 70 U5!! -NSA
    1. Re:Go web based. by birdadderley · · Score: 1

      or even better, why not use SQL and easy JSP?

  120. Consider Python by randall_burns · · Score: 1

    If you are a smallish shop used to some of the older technologies, I suspect you'll be annoyed by the overhead in both C# and Java. I would take a serious look at Python. Python can be run under the JVM, .NET CLR or native-it is also a nice, accessible language for a team of your size.

    1. Re:Consider Python by Billly+Gates · · Score: 1

      Python is not a platform for webdevelopment with its own server.

      You can write cgi modules with it but its like comparing apples and organges to a full suite like j2ee or .net/asp.

    2. Re:Consider Python by Anonymous Coward · · Score: 0

      So Java on JVM imposes an overhead while Python on JVM does not? Yeah, right ...

    3. Re:Consider Python by Anonymous Coward · · Score: 0

      False - see zope.org and twisted matrix, for just two examples. See also the new book http://www.complete.org/publications/pynet

    4. Re:Consider Python by randall_burns · · Score: 1

      One of the nice things about python is it works well both with web applications and as another reader pointed out with various libraries for client server development.

    5. Re:Consider Python by randall_burns · · Score: 1

      I was thinking more the overhead on programmers than the performance issues. What I've seen is that folks used to older languages like Cobol tend to find Python much easier to relate to than stuff like C# or Java. In Python, one can write short programs for doing just the sort of stuff these folks are used to.

  121. Healthcare technology - the answer by Scatterblak · · Score: 0

    The infamous MS vs Everyone Else rears it's ugly head, yes? For the sake of Making Money(TM), I suggest you put that behind you (That goes for all of you). As the (lonely, sole) architect of a multi-million doller clinical trials processing system (100M+ records, 20 million+ lives, etc), I can *promise* you that any enterprise system you build will be composed of multiple technologies. You could build it all in MS. You could build it all in J2EE. You could build it all in Perl if you're into self-flagelation. Your best bet is to develop the process flow to mirror the business model, break it into parts, and then let the needs of the application dictate the environment, at least to a certain degree. Need super solid networking between disperate clients? Java. Lot's of different data formats? HCFA? UB92? NFS? Legacy mainframe crap (I'm talking to you, Envoy/WebMD)? J2EE. Need the libraries for all those HIPAA-compliant, OIG compliant FDA compliant 'snapshot of every record in so-and-so format' stuff already written, with a company full of people to yell at when something goes south? MS has it already finished for you.

    Developing and architecture is fun. To make $$, however, you may need to put your personal preferences regarding platform, environment, etc aside, and let the needs of the project dictate some of the development decisions. At least more so than usual. :)

    If anyone walking the dark road of HIPAA conformal, HHS nazism type transaction handling wants to discuss off-list, mail me.

    wsharrison@gmail.com

    --
    Director of Implementation OmniComm
  122. Re:.NET vs Java - The Bad vs. the Bad by the+eric+conspiracy · · Score: 1

    While .NET is here to stay

    We thought VB was here to stay, too. I bet Longhorn is going to mean that a lot of what people are doing now in .Net is going to become 'legacy'.

  123. Don't ask slashdot... ask the customer! by A+Guy+From+Ottawa · · Score: 1
    How can anyone here even make suggestions on the technology for the solution when nobody knows the problem?

    It's really a question for the client. Who is the app for? How do they like to work? Will they need remote access? If successful would there be a possiblity to integrate other apps into this platform?

    Not to mention that asking ".Net (native client) vs J2EE" (since he's already decided for a .Net client rather then a .Net webservice) is like comparing apples and oranges.

    I'd like to moderate the question -1, Dumb.

    --

    using System.Awesome;

  124. Mac OS X Server by King_TJ · · Score: 1

    From what I've observed so far in the field, I don't think almost any hospital/medical office environments are running Mac OS X Server right now. (You tend to see it more at the research/lab level.)

    There are already a few packages for Mac OS X out there to run small dental, doctors' or chiropractic offices with - but you'll tend to see these running on several networked iMacs, in more of a "peer to peer" environment.

    If you *do* have concerns about your new product being compatible on OS X Server, I think you almost need to "go all the way" with that goal - and push your product as a niche-market leader in that area. It may or may not really fly, but being first to market in an area is usually a good thing. (EG. If you build it, they will come.) Maybe some hospitals would consider Mac OS X Server purchases if they knew there really was a high-end vertical market product available, designed specially to run on it and take advantage of its capabilities.

  125. Know thou setup by sm00th · · Score: 1

    As many have said, your details about your application's future environment are rather vague. I'll attempt to provide some slightly insightful chatter, though.

    Many hosptials usually have assorted UNIX systems, AS/400 databases, and a few Windows servers for the end-users. Anything useful can most likely be found on the UNIX systems or AS/400 databases. Likely, if you're being contracted by a hospital, your application will run on those assorted UNIX systems; however, if your application requires a Windows system, they'll gladly give you one.

    Typically, hospitals are pretty big on AIX and Solaris, and AIX and Solaris have *very* nice J2EE environments (especially, Solaris). You'll score a few points with IT blokes that have AIX or Solaris certs if you write in J2EE.

    I would *highly* recommend against going the .NET route. You'll be locking client in, and that's never a good thing. Whenever they wish to migrate, and they can't, no more contracts for you.

    You've asked about portability, and J2EE is the way to go. Want BSD? Fine. Want various Unices? Fine. Windows? Of course. Linux? There as well.

    J2EE isn't just a UNIX/Linux thing. Sun cares about the Windows VM as much as it does it's Solaris VM. Ask Microsoft the same, and post the reponse you get.

    --
    There's pissing contests all over. OSS is just another one.
  126. Re:what are you doing? by secretsquirel · · Score: 0

    Flamebait? that wazs the first thought in my head too. If I was in charge of hiring someone to program my healthcare system I'd make damn sure that they have enough expertise to choose a freaking language. How can you trust them to deliver solid mission critical apps if they are going to depend on a savage hoarde of wild geeks to tell them how to do it? Sorry dudes, don't take this the wrong way, but as most of us already know, the days when you could learn html and some scripting, set up a job interview and list your demands, then get hired are long gone. People found out that using frontpage isn't that hard. This has nothing to do with those coding gurus who really know their shit, are creative enough to design complex solutions, and dream in fortran. Guys that can bust out inovative, commercial quality apps still posses a valuble, uncommom skill, and none of them need help from slashdot to pick a language. Wish ya the best of luck with it though, I really do hope I'm wrong.

  127. Ruby on Rails by Anonymous Coward · · Score: 0

    Ruby on Rails is a nice newer platform for doing database development.

  128. It really depends on your priorities. by adolfojp · · Score: 1

    I use .NET when I want to develop the application faster. It is a lot easier to make web services on .NET than on Java. The bad part is that you are limiting yourserlf to MS servers. Of course, the database servers and everything else can be run on whatever else you like. The client can be in .NET, JAVA, a browser, it doesn't really matter.

    When I develop for portability I use JAVA. I can run it on any server that I like. Then again, how many times are you going to switch servers?

    Because of what I mentiones above I find myself more and more using hybrid systems. Linux for NSF and file storage and .NET for the app servers.

    Cheers,
    Adolfo

  129. Use REALbasic by Anonymous Coward · · Score: 0

    REALbasic does cross-platform far better than Java. It creates native executables and compiles to machine code for the platform you choose. This means you can support Windows 98-XP, Linux and Mac OS X if you like all from one code base.

    It's also better than .NET because it's secure (it compiles to machine code rather than byte code).

    Now before everyone chimes in about BASIC, this is a modern, object-oriented BASIC that is as object-oriented as Java. And you won't have any performance problems because again, it complies to machine code.

    You can check it out at http://www.realbasic.com.

  130. Relative recommendations by Tablizer · · Score: 1

    Rather than say X is always better than Y, here are the relative benefits as I observe them:

    * .NET if a rich user interface is the most important. Microsoft's client-side extensions are the most feature-rich, partly because they control the desktop standards still.

    * Java if security is the most important

    * PHP if responding to business environment changes is the most important. Dynamic typing generally leads to quicker product turnaround times and higher productivity.

  131. Sr. Developers by Anonymous Coward · · Score: 0

    In the end either language can work. If the app is a client server app, the .Net would probably work reasonably. Any decent programmer is not going to cry over one language or another. They may have preferences, but in then end the job dictates the tools. I personally do more java than .Net, but this sounds more like a .Net job.

  132. Advice from a healthcare programmer by jobiwan · · Score: 1

    I'm a programmer for an insurance company.

    Healthcare companies do not have top of the line cutting edge IT technologies; they're years behind the cutting edge, and they're IT departments usually have people who's training and experience reflects this.

    More so for doctors' offices & small clinics. They will have no IT and be running something in windows.

    Hospitals are the only ones that may be a wildcard, especially university hospitals. Their systems could range across the board. That's my impression...I'm least familiar with hospital IT shops.

    My 2 cents: do .NET and get it over with. I spell it M$ and would love to see java prevail more than .net, but the reality is you'll mostly encounter Windows shops and people who may have simple prejudices against java (viz it's slow, etc.). Even if it's compiled to a windows app and is easy to use & install, catchphrases like "it uses .NET technology" will go far. Even hospitals that use mainframe or unix backends will have their PCs running windows.

    If java is the way of the future, then the healthcare industry will catch on years after the fact. Right now they're living in 1998.

    1. Re:Advice from a healthcare programmer by Anonymous Coward · · Score: 0

      Dude !!

      Your talking about .NET here. Unless I am Mistaken .Net does NOT run on anything older than windows 2000 without extensive Upgrade. If IT shops are that old then .NET is definitly out !!!

  133. Kaiser Permanente is a Java Shop... by cutecub · · Score: 4, Informative
    Kaiser Permanente, for those who don't know, is really the first HMO. They serve all of California, Hawaii, Colorado, Georgia and a smattering of other regions around the country.

    I've been with the company for about 3 years, doing both Software development and system support. During that time, most of my development has been in Java. I have yet to see any .NET development.

    There may, in fact, be .NET development at Kaiser, but I haven't been able to find many references on the corporate intranet.

    I would summarize Kaiser's software development as follows:

    • Patient Records are stored in IBM DB2 running on IBM OS390 mainframes./li>
    • Minor or less-critical datastores often use Oracle.
    • Some legacy systems use Cache (Mumps) running on AIX
    • Major applications run on either a Mainframe or IBM AIX boxes, or a combination of the two.
    • Java is the language used for developing their Integration Broker, the crosspoint which links many of their newer medical systems.
    • Fat client-side applications are written in C++, or to a lesser extent, Java
    • Web applications are written in Java and hosted on IBM WebSphere
    • Perl plays a supporting role in UNIX environments, as it always seems to.
    • I have yet to see Microsoft used for any critical back-end component which could significanly impact patient care. Client software, yes. Back-end software, no.

    In the last few years, Kaiser has had an apiphany regarding in-house software development and now leans towards vended systems. But there is still a significant amount of in-house software development done to integrate these vended systems.

    Hope that's useful.

    -S

    1. Re:Kaiser Permanente is a Java Shop... by Anonymous Coward · · Score: 0

      Actually, Kaiser's radiology information system runs on windows, with an oracle backend. That application is written in VB 6.0/ASP

  134. J2EE is too structured by SerialHistorian · · Score: 1

    I would say J2ee due to portability, but I think for your purposes, J2ee is going to be too structured. Stay with me here for a sec.

    You don't know much about the vertical and your dev team's split. You're going to have a lot of design changes. In my experience, J2ee has a lot of problems handling design and code structure changes, while .Net in various flavors has an easier time because it allows for a looser design.

    But yeah, keep your resume dusted unless the company you're working for has deeeep pockets.

    --

    --
    Vote for your hopes, not for your fears - Vote Third Party

    1. Re:J2EE is too structured by ugol · · Score: 1

      too structured doesn't mean anything.

      In Java/j2ee you can use whatever design you want, you can follow all the big core J2EE patterns or use "looser" ones.

      In fact it's a matter of design, not platform. In Java you have much MORE design/idioms choices, because of the maturity:

      - You can use (or not) IoC stuff: Spring, Hivemind, Pico/Nano, your own
      - You can use (or not) AOP: AspectJ, AspectWerkz, Jboss AOP, etc.
      - You can use (or not) OR mapping: from EJB to hibernate, to iBatis, to your own.
      - you can use (or not) MVC frameworks: Struts, Webwork, JSF, etc, your own
      - You can persist on RDBMS, ODBMS, persistent collections (Berkeley DB), prevaylence system (prevayler), file system

      And you can usually mix and match all this stuff.
      Some of this stuff (this is by far complete... only an example) is being ported to .net.

  135. Depends what you're doing by tignom · · Score: 1

    OK, first my background. I used to work in behavioral health. I changed industries about two years ago. I've worked extensively with both C# and Java in the last four years. My thoughts:

    - Almost everything in behavioral health was on the MS platform. If you're writing a webapp, this doesn't matter, but you'll have a slightly easier time selling a .NET client application than a Java one. Note that I said behavioral health, which is a smaller niche than healthcare in general. I don't know much about the larger industry.

    - If I want to turn out something quick and dirty, I can do it faster in C#. This is because the Visual Studio IDE is desgigned to make building user interfaces easy. It's not perfect, but it's great for prototyping and I can fine-tune the generated code. I have yet to see a UI-building tool in Java that can rival this. (This line's gonna get flamed because I haven't looked very hard.)

    - Eclipse (for Java) is by far the most powerful and useful IDE I've ever worked with for coding. It blows Visual Studio out of the water for writing code, but it doesn't have UI building tools. Use it and you'll learn to love the refactoring tools and junit integration.

    - I believe that Java provides better infrastructure for building enterprise-class applications than .NET. Either architecture can be made to scale, but Java provides sane architecture for things like transactions (JTA) where .NET makes you roll your own. I really think .NET glossed over some enterprise features to make things easier for the novice where Java forced you to think about doing things right.

    - If you're using Java, don't blindly lock yourself into J2EE. That was my first mistake. I now use hibernate for my persistence layer instead of EJBs and tapestry is my web framework of choice. Hibernate is much easier to write (and especially test) than EJBs. Struts is an ugly crutch that completely breaks the OOP principle of encapsulation and JSF is the bastard child of struts, ASP.NET and some thalidomide.

    Now you have a decision to make, and I'm not going to make it for you.

  136. development on .net will be faster by Anonymous Coward · · Score: 0

    dont kid yourself about java. Secondly you have massive third party support with .NET, and very mature integrated IDE devlopment applications.

  137. .Net & J2EE runtime strenghts by ToPAz3in6 · · Score: 1

    Before the pro-linux and anti-microsoft zealots attack this question from a biased view, I emplor you to make a swatch. A simple program with a few lines of trial code which will do the Exact same thing for each system.

    The reason I feel you need to do this is to get out any negative notions of J2EE being slow or .Net being insecure.

    First point: Throw out the assumption that Java is slow. It is interpreted, yes... but interpreted has nothing to do with true system bottlenecks. C# (.Net's native language) is also at the mercy of the same types of system bottlenecks. Java has to be interpreted by the virtual machine, a software layer. C# has to deal with the .Net framework, another software layer, every time you make a system call... which you (with a medical application) will be making more system calls than any other type of code. If you write some sample code... give this a shot. Neither will let you down for speed... unless you're running .Net on your main windows server, and you're Remotely running Java apps from a separate server... then of course .net will run faster. Put them both on the same machine and there will not be a noticeable difference for your application.

    Second: .Net is not insecure. Windows and Internet explorer may have many system holes not yet patched, and Microsoft is a bigger target for crackers (malicious hackers)... but that has nothing to do with the holes in .Net. Java and .Net are susceptable to a similar number of vulnerabilities if you are planning on running both in a Windows environment. .Net may be less secure if you plan on running either of them as a Web-based application and you're using Internet Explorer on the user's computers... but that's just plain stupid. Don't write it for Internet Explorer. Period.

    Now I invite others who have dealth with both of these systems to give their individual advise, and even if they contradict me... but I always recommend being careful who you listen to. I'm not claiming that everything I've said is the end-all-be-all of the truth. No offense to the Slashdot crowd, but we can shoot ourselves in the foot sometimes with negative comments about Microsoft without backing. Those who back up their torts are often right... but please make sure they apply to you and YOUR application.

    --
    Just drop acid, already, and invent something better... or quit your whining.
  138. .NET = Professional Negligence by The+Evil+Muppet · · Score: 1

    There's an easy way of looking at this.

    By building any application in .NET, you're committing professional negligence. You're locking your client into an entire product line. To quote Gosling, .NET is a product - not a platform.

    Should your client ever decide to move to another platform or seek an alternative developer to take care of the code base you're producing for them, choosing .NET will immediately limit their choices.

  139. web services are what's important by amichalo · · Score: 2, Interesting

    I have just finished a project for small group physician practices all built OSS and 2005 I will be working on another project for the same market with .NET.

    As much as IO enjoy OSS and dislike the evil that is blah blah blah, I have to say .NET is a very good environment to get large, complex applications built in with limited resources. I had never programmed in it myself until two months ago and I must say it is not difficult at all to pick up as long as you understand OO programming (which any programmer does).

    So my take as far as the market itself is that the best thing to do is develop web services that can be consumed by the customer. That way, the platform you develop in does not matter. If you have to pick, then know that Microsoft is making huge strides in healthcare with transcriptions, digital medical records, iPaqs and Tablet PCs. I don't see a lot of OSS in the market.

    Best of luck.

    --
    I only came here to do two things; kick some ass, and drink some beer...looks like we're almost out of beer.
  140. I am not a developer, but.... by plazman30 · · Score: 1

    I have heard MANY good things about Apple's WebObjects software, it's cross platform (OS X, Solaris and NT/2000/2003, maybe more...) and it's supposed to be a dream to develop for.

    If you assume that the client will not care about the back end, give it a look.

    The big problem you may have is any customer with an MS Enterprise Agreement. The unspoken rule with those things is that YOU WILL NOT run ANY technology that Microsoft does not make.

    I worked at a client that had an MS Enterprise agreement, and the 15 person department I was working in had ALL Macintoshes, and it was funny how both the IT director and later a rep from Microosft came in to have a talk with me to see what the timeframe was for transition these people off of their Macs...

    I was told that use of any non-MS products could affect pricing levels.

    Bottom line is....

    If you want the greatest coverage of customers, develop in J2EE. It covers you if you run into a shop with an Enterprise Agreement (J2EE will run on NT with IIS), and will cover you with a CIO that has a thing against Microsoft.

    The other thing you have to realize is that doctor's offices are on a budget. You sell them a cheap Linux solution, and they'll be happy.

  141. Real HC developers use MUMPS by Tony · · Score: 1

    Bah. Use MUMPS, like the US Veterans Administration. It has all the power of BASIC with the transparency of INTERCAL. Who could ask for more?

    --
    Microsoft is to software what Budweiser is to beer.
  142. Depends on your buget for IT support IWO by birdadderley · · Score: 1

    The REAL question is what is the ROI on using J2EE vs. .NET? Which one will save you money down the road? Which one will offer you a support system down the road? If this is going to be that large of an application, which platform will be best for the hardware that you are serving (PDAs/PC's/etc)? Who is going to support this system once it's developed? How much post-development work is going to be needed? Would the customer rather be involved or let it plug-and-play? How much of an IT support system is going to be needed for this system? Which platform would be best for large groups? Which platform would be better for smaller groups? The customer most likely going to like the system that just "goes", besides the usual IT jobs of backups/etc. Which solution is more likely go get the customer to buy it? Do you want do make it so the customer would benefit from extensions to the product?

    The other issue is risk management? Which system will likely fail? Which system will cause a rise in development costs that may have been avoided? Which system is easiest to develop on for your network? Which system is easiest to manipulate if the customer adds requirements as you go along?

  143. Before making the decision, look at GnuMed by Linuxathome · · Score: 1

    The nice thing about open-source software is that you don't have to spend precious time and money re-inventing the wheel---you could at least improve upon an already existing design. That said, at least check out GnuMed. It doesn't have the backend that you're looking for, but at least will give you ideas. It's a system developed by physicians. Won't you consider contributing to a open-source project? It'll make the world better---at least with a unified open-source system, patients will be better-off due to ease of document transfer from clinic to clinic.

  144. I've worked in healthcare by ajv · · Score: 1

    You know what? It really doesn't matter which you choose.

    What does matter is the Sarbannes-Oxley and HPIAA acts, and think like as if your data was in there.

    Patient privacy is all important, and that's 100% about process and 0% about technology.

    Spend the time to create the system properly.

    Think about the entire lifecycle
    - architecture
    - design
    - testing
    - coding
    - SQA
    - Security / UAT / SIT
    - Deployment

    These things are important. Do not fall into the waterfall lifecycle methodology - it's simply too hard to deliver secure code using it with excessive caution on the risk front. Use an agile process instead.

    When you come to the coding aspect, the tools are far more mature on the .NET side of things, and once Visual Studio 2005 is out, it's a complete no-brainer. Eclipse is the best development tool for J2EE apps and has excellent support for testing, in-code doco, and refactoring. .NET is far, far faster to develop simple applications, but they're roughly equal for more complex applications.

    In terms of security, both are reasonably secure unless you decide not to be. I heartily recommend the "Writing Secure Code" book by Howard and Le Blanc, and of course look at OWASP's output.

    I train developers to write secure code all the time. My main advice is to Think Evil(tm). What could you do to subvert the code you're writing.

    Go to the place you're writing for - most of the time, it'll be terminals in semi-public spaces. Look at how the staff just leave the computer unlocked, and yet how well they look after the paper records. I don't know why this is, but you as a designer MUST cope with this human behavior. There is no class in .NET or J2EE for this.

    For cost reasons, if you're a Windows shop, you should go down the .NET path. If you're a mixed "one of everything" shop (like nearly every hospital I've ever worked in), spend the time doing a comparitive study. If you're going to sell to other health care institutions, stick to .NET.

    The primary reason for security failure, availability failures, and other cockups is human fallability. If your code is the difference between a manual process which is (say) 40% slower than the automated version, that's 40% of patients who cannot be dealt with during an outage. People could die. You MUST be servicable and supportable. Your in-house skills dictate this choice, not platform or one-eyed "X is crap" choices. You could be the one or two that die.

    As for reliability of the platform, in my experience, both are equal in the hands of well trained staff. J2EE is more memory hungry ... but RAM is cheap. .NET is faster for numerical computation, and database access (particularly to ADO.NET native providers like SQL server), but most health care apps are data driven, not computationally driven.

    As you point out, Java is cross-platform, but in my experience with several large scale applications is that developers get lazy and tie you to middleware instead. Some of that middleware is not platform independant, and you're stuck on a crazy combination of platforms occasionally. Also, unless the developers use Windows to develop and test, and Unix to develop and test, it's 99% certain that the code will not just run on the other platform. This is true between deploying (say) AIX on Websphere and Linux using Tomcat just as two examples.

    Unless portability is more important than all other business drivers, do not include it in your list.

    Remember:

    * patient privacy #1
    * correct operation #2
    * availability #3

    The rest will fall into place. You could satisfy my top 3 health business drivers in Coldfusion or PHP. It's not about the technology. Decide on your patient's needs, not yours.

    Andrew

    --
    Andrew van der Stock
  145. WebObjects by jimijon · · Score: 0

    Just want to put my two cents in here. I am the developer of a product which is a hosted application. Being a bootstrap startup, we had to be careful with our budget. I was already experienced with Java and wanted to continue in that world leveraging my skills. After much review I came upon WebObjects. The price seemed right and I was just getting into my Apple OS X laptop in a big way. Well, I can't tell you how amazingly productive WebObjects turned out to be. And!, I can deploy it on WebSphere or jBoss too! WebObjects runs the iTunes store so you know it can scale and the price was right too...$699. Finally, I found the community to be extremely helpful. The final upshot of all this is that I am single handedly the developer and system administrator of a couple of XServes running WebObjects and mySQL currently getting the application IBM certified with DB2 and WebSphere. This with just one code base that detects the database at runtime. WebObjects is an outstanding product.

    --
    Mind | Body | Spirit | Cash
  146. My concerns by Anonymous Coward · · Score: 0

    I'm not really concerned with the accuracy of the information, or unfinished entries. Cause eventually, someone will fill them in, or correct them.

    I'm more concerned about the fact that their site currently isn't browser friendly with all broswers.

  147. Don't know how that happened by Antony-Kyre · · Score: 1

    Entered in wrong article obviously.

  148. There are many projects and many people already. by ivaldes3 · · Score: 1
    There are already many projects and many people doing FOSS in medicine. You can read the chronology of Free and Open Source Software in medicine over the last 4 years at Linux Medical News which has been in operation since 2000 and has over 900 articles on it. There are already many FOSS medical projects with service contracts available that are being used in the real world. A very few are: VistA, OpenEMR and FreeMed. In short, FOSS in medicine is active and thriving. Why not join a project that is already in progress?

    -- Ignacio Valdes, MD, MS
    -- Editor: Linux Medical News

    --
    http://www.LinuxMedNews.com Revolutionizing Medical Education and Practice.
  149. So many Anonymous Cowards... by JoeCommodore · · Score: 1

    I don't think I've seen as many Anonymous Cowards pluging^h^h^h^h^h^h^h^h.. er.. suggesting thier products. :-)

    --
    "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
  150. Not an answer... an opinion... by bokmann · · Score: 1

    I cannot give you an answer for your particular situation, but I can tell you my opinion, based on my real-world experience.

    I am the chief architect for a major application developed by the U.S. State Department, and used by foreign governments for the licensing of hazardous materials.

    We use J2EE, and have been since 1999. JBoss is our application server. We used to use Weblogic, and were technically happy with it, but JBoss does everything we need, and has licenses and costs more favorable for our end users.

    Our application is a bunch of domain objects and custom business logic, presented by the J2EE server as a bunch of sessions beans (some stateful, some stateless). We have a swing and a web-based client. Most of the rich interaction is done with the swing client, with mostly browsing and canned searching from the web-based client.

    We do NOT use Entity beans - and I don't suggest anyone use this part of the EJB specification... For data persistence we use The Versant Object-Oriented Database. For data persistence, I'd recommend this, JDO, or Hibernate talking to the relational database of your choice.

    We are very happy with the choices we have made. There is a TON of information out there about J2EE, we are happy with the performance we get, the skills are readily available, and there are plenty of vendors building tools in that space. J2EE is obviously a realistic choice for the kind of work you are doing - and has been for many years.

    I do not know much about .NET... only because that isn't where my career has taken me, not because of any dogmatic stance. My major concern about using it for this kind of work is that there is no 'application server'... .NET is tied to the windows platform. I know there are projects like Mono, but realistically, if you are using .NET, you are buying into Microsoft, their tools, and their solutions. With J2EE, I can upgrade my operating system and my application server independently - choose from different vendors for both, play them against each other for cost/support benefits, etc. With .NET, you just won't have these long-term options.

    I am the president of the Northern Virginia Java Users Group. While some may say this makes me biased, I'm not an employee of Sun or anything... I work for a relatively small company. I am involved in the NovaJUG because I happen to know and like Java, and like to teach. I also occasionally speak at conferences such as the No Fluff, Just Stuff Software Symposiums. I'm not going to leave my email address or anything, but there is enough info in this to track me down. IF you would like to discuss this further, drop me a line.

    1. Re:Not an answer... an opinion... by countach · · Score: 1

      I'll second this guy that you should check out Versant. Will save you a bunch of time.

  151. McKesson is J2EE; it's about availability... by Bartlet · · Score: 2, Informative

    The McKesson Horizon suit of products (clinical) all have a J2EE future. Right now availability is a top concern for those of us deploying clinical systems and evaluating vendors. A portable solution is important here because it allows the IS shop to determine which scalability/availability solution best fits their budget.

    1. Re:McKesson is J2EE; it's about availability... by Anonymous Coward · · Score: 0

      I have to agree with the availability. From experience J2EE + Linux can provide for a very stable healthcare solution.

      Plus, you have a plethora of both free and proprietary tools at your disposal that can be easily integrated into your framework.

      I also wouldn't want to be tied down by the MS licensing and hardware requirements.

  152. As a developer for A CA Provencial Health by neilhan · · Score: 1

    I like Java better. I have been developing, maintaining large scales applications from a Canadian provencial Health for four years. There lots of thing make me wonder how .Net deal with it. Plant form. We have to deal applications that writen for the whole country. If it is a .Net app, we will have to install a MS server and install it. Fortunatly that app is a J2EE application. It is not hard to deploy it to WebSphere. Development environment. We are not stucked on one tool, one OS. Open source packages. We do reports by using jasperReport. It used to be Cognos. Bloody expensive and the solution is way to heavy and it made one app have to crose two type of plant form. We also have a bunch of mainframe application need to be available on the internet. We used an open source 3270 simulater to do the screen scraping. As other said, it depends on your teams experience on Java and .Net, the requirements. If all the above items do not matter to your project, the decision will be easy to make.

  153. My experience... by PinchDuck · · Score: 2, Informative

    If you are creating fat clients, .NET is the way to go, most likely. If you want web based, J2EE has a lot of open-source compenents you can use to get your application networked via HL7
    HAPI is a java-based open source HL7 library:
    http://hl7api.sourceforge.net/
    JEngine can quickly route HL7 messages to & from your application:
    http://jengine.org/
    If your software is open source, or you can use open source components, OpenEMR can give you a leg up for clinical demographic and medical data management. It's neither .NET nor J2EE, rather it is PHP/MySQL
    http://www.openemr.net/index.php

    If you will be interfacing to large hospitals or medical centers, you will most likely bump into Cerner http://www.cerner.com/ or McKesson HBOC http://www.mckesson.com/homeflash.html. While these companies are a bit out of scope for your question, you might want to reserach them as they are the biggest players in the field. Good luck, it is an interesting time in the health care IT field.

  154. the single most important thing to medical by geekoid · · Score: 1

    development is having someone who knows HL7 inside and out. Do NOT think you can learn it as you develop, you can NOT. It fills 2 binders, each over 1000 pages. I had X12 experience in the mortgage and finiancial industries. When I went into medical I figured it would be someting I could opick upo as I went. Lets just say I'm glad they didn't make HL7 my top priority right away.

    As for your development platform it comes down to this: .new excludes more platforms the J2EE, however, most hospitals are tied into Windows.

    the only caviet is that there where some discussion about MS OS not being able to meet the HIPPA security requirements and still be usable in a practical manner.
    Now I haven't developed medical software for about a year. If I were to get back into it, I would look into windows OS security complaience and call a few hospital IT dept. and see what they think, and what is on their road map.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  155. Perl6 ... by Iggowanna · · Score: 1

    It'll give Java and .NET a run for it's money.

    Too bad it's not done yet.

  156. Building Real Apps by Anonymous Coward · · Score: 0

    I work with big db-based apps. Here's a sketch of our architecture : Klocs and klocs of screen support code. Basically, we can design a screen with some basic layout resources and some meta data and have fully functioning new/edit/delete functionality for records and subrecords. This type of functionality covers most data entry. Custom app server. Setup as a service, any long running or schedulable jobs like db cleanup, data warehousing, long running queries can be packaged up in a batch object and scheduled off for either immediate or delayed execution on an app server. App servers talk to a scheduler database and are limited only by the number of machines and how much horsepower the main db has to supply/process data. Logging and debugging. The haystack comment somewhere above was great. You can't build a big system if you can't debug it. You need logging, process tracking, process monitoring, process reporting, sql tracking ... you get the picture. Anyway, good luck with whatever you try to build.

  157. Someone had to say it... by x1pfister · · Score: 1

    Suddenly the "Blue screen of Death" takes on a whole new meaning....

    --

    Cat: The other white meat

  158. More misconceptions by Phleg · · Score: 1

    Java isn't slow. Honest. And .NET is just as cross-platform capable as Java is. In fact, it even allows you to cross language barriers so code can be written in whatever language is best suited to the task. Technically, Java can do this too, but it isn't as well done or publicized...

    --
    No comment.
  159. You people still haven't figured it out yet?? by Anonymous Coward · · Score: 1, Interesting

    webapp, webapp, webapp.. if you need a "rich" UI 99% of the time you're probably putting bells and whistles on a rat. Users want functionality not some snotty NY designer's wet dream.

    Java using Struts, Hibernate, Xdoclet, Spring.. all open source treasures.

    We developed a large inventory, client, and server management system in a matter of weeks not months. Pick a Java app server & a database, drop your WAR file and you're done. No .Net crap to deal with, thank god. BTW the system is *FAST*, Hibernate is a godsend. No client prereqs, just a browser, firefox please, and the users love it. .Net?? I thought the big boys gave up on that ASP/VB mangled garbage years ago... who knew?

    Actually.. please disregard this post, I love presenting clients with apps that run circles around the piss-poor .Net failures, it makes me smile. tnx Bill!

  160. consider this by shiva10 · · Score: 1

    i work for a company that develops Rx systems for hospitals. We faced same design decisions, so here is what we found: if your product is going to interoperate with other healthcare software, you will probably have to work with HL7 (the standard protocol for healthcare data exchange). The easiest we found to do that is BizTalk 2004 with HL7 accelerator (yes, both are Microsoft products). So .NET was the natural choice for this component. The rest of the system components are written in Delphi though, so you might want to consider this one too as a grat RAD tool. Good luck!

  161. I'm in this Industry by jerdenn · · Score: 2, Interesting

    Hmmm..

    This is an interesting question. I'm actually in this industry, and have been for the last half-decade. For an industry that seems to lag remarkably behind the times, I'd like to note the following:

    1. The major player in this field, McKesson (previously HBOC) seems enamored with Java. This, however, is only because the Healthcare IT field seems to be 5-15 years behind the current technology.

    2. Major players in this field (Particularly Eclipsys) have bet the farm on .NET, and by-and-large, this seems to have been a successful gamble, though not a smooth road. The Eclipsys flagship product, Sunrise XA, is written almost entirely in .NET. This product is a major player in the healthcare arena.

    3. Many hospitals have strict rules on what IT software is allowed. I will tell you that the following is ALWAYS allowed: Windows NT, Windows 2000, Windows 2003, SQL Server, Oracle.
    The following is SOMETIMES allowed: Sybase, Any "other" RDBMS, Windows XP, Linux, *nix, etc.

    With the combination of Windows and SQL Server, you can't go wrong. Don't believe me? Do your market research. Want more info? jerry@dennany.org.

  162. Consider not just J2EE but other systems... by SuperKendall · · Score: 1

    First of all, you WILL NOT get the gains of GUI development in .Net web apps that are promised to you. That has been proven out at a project at my own workplace. Yes the demos look very good. But for a system with any degree of complexity beyond a few form fields you are going to be doing a lot of monkeying, and not the fun kind. Java is still far ahead in terms of framework richness.

    Also, when considering Java look not at just J2EE, but other systems coming out like Spring. Note that Struts is now very widley used, very stable, and would make a good choice (possibly in conjunction with Spring).

    Lastly, when considering the J2EE vs .Net question look at the maturity of software for the two spaces. Java has multipl mature IDE's, multiple mature monitoring packages, multiple mature performance tracking packages - you get the idea. Yes I am biased, but ask yourself why you would use a clone when you could use the original which is still advancing? Why settle for one app server that runs on one system when you could choose from multiple app servers that each run across multiple systems.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  163. LOL, mod parent up FUNNY! by sloanster · · Score: 1

    This is /.
    Anything related to MS is not well-recieved.


    Har har, good one, but try again: This is slashdot, where most of the audience are microsoft windows users. Looking over the posts so far, I see a fair amount of comments from microsoft fans fans chiming in with all the reasons to standardize on dot net...

    FWIW, I work for a major (and I do mean major) automotive manufacturer, and they've recently decided (and announced to the IT staff) that the architectural direction for all future enterprise apps is to be j2ee, and not .net. They do not decide these things lightly, folks.

  164. As Far As I Have Seen.. by drfreak · · Score: 1

    Most medical practice management/payment software is pretty much database-driven. The challenge is in keeping up with new business rules which come out quarterly. Personally my goal is to have a unified software base which embodies medical billing and payment. Imagine software that bills and pays in the same model. I'm talking ANSI X.12 with all it's sub-formats talking together as they were meant to be..

    I actually designed a practice management system database from scratch. to do so for a payment system too is just the next logical step.

    1. Re:As Far As I Have Seen.. by drfreak · · Score: 1

      Just to follow up because I left the most important factor out. HIPAA. The actual implementation language is the least of your concerns..

  165. Know anything about HIPAA? by rpsoucy · · Score: 1


    The language is the least of your worries. I would strongly advise against .NET (hint, don't go with 'Latest' tech. most small-to-midsized healthcare providers use a mix of new and old software and hardware, for example, I've walked into many hospitals that still run "NT Server 4.0" and "NT Workstation 4.0"). Java has a stong presence in Healthcare but can be extreamly slow on Windows ever since Microsoft stopped releasing their Java VM (Sun's Java VM is horridly slow, they really shouldn't of complained about the Windows one)

    Python is getting more and more credibility in Healthcare and Scientific computing. Its fast, easy, stable, and secure. It would be a very smart move to use Python.

    Your real focus should be HIPAA compliance. If you don't know what HIPAA is you shouldn't even have this contract, but assuming you're not going to just "give up" you should read up and become informed on HIPAA. This is assuming you're doing the work for a Healthcare provider in the US that is... anyway, HIPAA regulates healthcare software... if you don't meet HIPAA standards for security (not only coding wise but access wise etc) your product will be useless and you'll be forced to redo it... more importantly... you'll look like a group of idiots.

    So yeah, start reading up on HIPAA (It takes months to understand it all if your not fimilar with it at all, so I wouldn't waste any time.)

  166. Slashdot = bad information by minion · · Score: 1

    I had to reply, considering all of the responses I saw around PHP.

    Not to slam PHP, it most definitely has its place, but enterprise healthcare is NOT where it belongs.

    We provide an ASP model for our clients - approximately 4000 users total. We generate 4-7 Gigs a day of electronic medical records - radiology scans, dictation, transcription, faxes, documents, charts, etc. I for one would NOT trust PHP to that kind of role. We currently have close to 14T of data online for our clients.

    Our software suite is entirely web based, hosted on linux based servers. Its not PHP, its not ASP, its not java. I can't speak for java directly, but I know that PHP could not scale that well to serve 4000+ users.

    Its a hard market to get into, and if you're on Slashdot asking for advice for this, you really need to do more research - and not on Slashdot.

    --

    -- If we don't stand up for our rights, now, there will be no right to stand up for them later.
    1. Re:Slashdot = bad information by tf23 · · Score: 1

      So what is your software written in?

      What db software and hardware are you using to serve all this to your users?

      For your scans, are you saving them as {insert graphics format} in a blob?

      I worked for a hospital for a number of years, mostly doing networking stuff. Now I do less of that, and more coding. Your post has my curiosity going.

  167. Here's a health care industry perspective by Man_Holmes · · Score: 3, Informative

    I am currently working on a project for a software company that sells to the health insurance industry.

    In developing this project I've had contact with a lot of the largest health insurance companies in our region.

    What I have found most of them have in common is a mixture of J2EE and ColdFusion, almost exclusively. It appears that dotNet hasn't made the inroads with the health care industry that they have with other corporate clients.

    Holmes

  168. Give up, dude.... by Anonymous Coward · · Score: 0

    ...you're hopelessly outclassed by those of us already in that space.

  169. Oracle by asliarun · · Score: 1

    Deciding on a platform is a trivial issue. Deciding on your system architecture is the key question that you should be asking. Forget .NET and J2EE for a moment. In any case, deciding on .NET or Java first, and then building your system archtecture would almost always result in a poor and non-optimal design.

    Take the bottom-up approach instead. First decide on the database that you're going to use. Consider your database size, performance requirements, transaction requirements, and reliability. Get a database expert or DBA guru on board, if you don't have one already. Believe me, this is the key. It's no secret that most enterprise systems invest the lion's share of their project budget on their database architecture and personell.

    Next, make an estimate of the business logic complexity and size. Consider implementing the business logic directly in your database. The advantages of doing this are:-
    1. Performance - No client application or middle-tier server application can hold a candle to the performance offered by a well-tuned stored procedure or (Oracle) package.
    2. Maintainability - Say, you have a thousand clients connected to your database. Changing a business logic component that's implemented directly in the database would be a trivial issue. Change the package and recompile. Clients can seamlessly get the update.
    3. Simplified system design - As long as you have a strong database architecture, you'll notice that the complexity of your non-database code will be dramatically low. In other words, taking a decision on a client platform such as .NET or J2EE now becomes a trivial issue. In fact, you can even have both, with additional platforms thrown in.
    4. Portability - Again, because your biz logic is encapsulated in your database itself, you can have multiple client technologies connect to your database in a trivial manner.
    5. Interfacing with other databases - My experience with enterprise databases has shown me that interfaces cause 80% of the maintainence issues down the road. As opposed to these "platforms", most databases offer readymade tools for scheduling and implementing interfaces. Again, no command line interface or XML web service implemented in a "platform" can even come close to the performance and reliability of a database level interface.

    To reiterate, your first three criteria on implementing a robust system design should be database, database, and database. Remember, the lifeblood of any software system is its data, not the cruft we call .NET or J2EE or whatever.

    Although I've titled my subject as Oracle, it can be replaced with any other RDBMS that suits your needs. Only, remember, nobody ever got fired for implementing Oracle, and for good reasons to boot.

  170. Microsoft? Sun? shouldn't we look to Novell/FSF by Anonymous Coward · · Score: 0
    Mono's pretty nice; I'd recommend it.

    Sun occasionally talks about releasing Java so you could use it; but so far it's been all talk, no action.

    My vote... Ximian-Mono

  171. Requirements first! by Parandor · · Score: 1

    From what i could get from the article, you first must determine what exacly is your software going to do.

    Handling shedule? Monitoring medical equipment? Issuing medication list for patients? ...

    SUN clearly state in its documentation that J2EE is NOT for mission critical applications. And if you have hardware interfaces to program, Java is not the programming language you want. In other hand, if you are only going to work with a database, then yes, an interface that can handle any platform is best.

    As for .NET well, my understanding is that the problem is Windows. Can you afford to have your application to crash? Is the possibility to "lock" the station important to you client? If no, then windows could be a good choice.

    The choice of platform is only secondary in your case. First get all the specs out, especially security and safety related specs. Then choose whatever platform that does the job, don't just limit yourself to .NET or J2EE.

    1. Re:Requirements first! by sm00th · · Score: 1

      What a load!

      Find me the Sun document that says J2EE isn't for mission critical apps. If it wasn't for mission critical apps, why are they selling a Java application server, why are they incorporating J2EE in Solaris so heavily?

      Think before you speak.

      --
      There's pissing contests all over. OSS is just another one.
    2. Re:Requirements first! by dazk · · Score: 1

      He's right. It's stated in the license. But that kind of thing is stated in just about any major software license. It's simply a legal protection. If a nuclear powerplant blows up and for example JAVA was used for the software that caused the blowup, SUN can simply say we told you not to use it for that.

  172. "often wrote bad" by Anonymous Coward · · Score: 0

    As bad as your grammar?

  173. Parent Post = bad information by Anonymous Coward · · Score: 0
    What a silly little troll you are.

    Your pissant little 4000 users total is what significant PHP sites handle each minute! Oooh 14T :) That's only 14000 of the millions of email accounts significant sites handle.

    If you think PHP can't handle your dinky little requirements, you know very little about scaling systems. What, you think the guy's going to run the whole thing on yor mom's Pentium II?

    1. Re:Parent Post = bad information by minion · · Score: 1

      Your pissant little 4000 users total is what significant PHP sites handle each minute! Oooh 14T :) That's only 14000 of the millions of email accounts significant sites handle.

      I see you were brave enough to actually post with anonymous coward. Thats nice.

      No, PHP would crumble when even 100 of the 4000 users simultaenously click on a scheduling form that produces OVER 500 queries to the database.

      I've worked in enterprise healthcare for many years. I've seen quad Xeon boxes running other EMR suites that can't handle 30 users at once.

      If you think PHP can't handle your dinky little requirements, you know very little about scaling systems. What, you think the guy's going to run the whole thing on yor mom's Pentium II?

      Thats funny. Really. Considering the mutlitudes of clustered machines that are necessary to host that kind of volume does not speak well its scaling ability. It speaks well of a company willing to throw tons of money at something in hardware to make it work.

      How many boxes does Hotmail use? Last I heard, it was in excess of 600! Thats not efficient.

      When you actually have some gall to post as a real user, AND some credentials to back up your weak ass claims, talk. Until then, enjoy your mom's free room and board.

      --

      -- If we don't stand up for our rights, now, there will be no right to stand up for them later.
  174. Future Costs by Stephen+Samuel · · Score: 1
    If MS manages to patent huge chunks of .net (which they were claiming to do), then you could end up paying 50% royalties just to distribute your own code (even if it's done in mono)

    Granted that's a worst case, but you never know with Microsot.

    --
    Free Software: Like love, it grows best when given away.
  175. My 2c by Pflipp · · Score: 1

    My healthcare toko was a Microsoft house.

    The results were various. Every virus went through the whole hospital, and somehow it invites the more sloppy third party providers. OTOH that may well be because the package selectors only look at the looks of the app, not at the problems.

    --
    "We can confirm that Debian does *not* ship the version with the trojan horse. Our version predates it." [CA-2002-28]
  176. OpenEHR are about to release a Java Prototype by Forget4it · · Score: 1
    THE UCL team working on the worldwide OpenElectronicHealthRecords initiative are about to release an Java EHR server. But information is scarse

    OpenEHR uses open-standards based archetypes as "flexible easily understood templates" for specifying complex systems that are inevitably going to evolve overt time - as health systems always do.

    Thomas Beale is lead on the archetype work,

    --
    Artificial intelligence is the study of how to make real computers act like the ones in the movies.
  177. I'd recommend Java by LarsWestergren · · Score: 1

    I will admit upfront that I am biased. I am a Sun certified Java Programmer, working on Developer. My C#/.Net experience is limited to reading a book and talking to friends who are currently taking a course at Uni.

    As you can probably guess, I'm going to recommend Java. The technologies are very similar and it is probably not a great problem whichever you choose, but in my opinion Java has this going for it:

    -It has been around longer, which means more people are familiar with it and it has time to mature.
    -There are a huge number of tools and libraries available. The best ones are being copied (NUnit from JUnit etc) but there are many more.
    -It doesn't have MS behind it. Those who don't think MS are going to play the lock in game again if things are going bad for them, are terribly naive.

    On the other hand, .Net might have the advantages of:
    -As a newcomer it can avoid some of the mistakes that Java did and is stuck with.
    -It has the massive resources of MS behind it.

    --

    Being bitter is drinking poison and hoping someone else will die

  178. THIS IS SICK!!!! by NoelWeb · · Score: 0

    First, asking a web-based community like /. for opinions about platform is just a plain waste of time... and of course that's why I have to respond and waste my own time. For all you Java-heads out there bashing .NET, take a good look at all of the wonderfully-slow Java apps that take 3x as long to develop and suck because the JVM takes up half of any machines RAM just to get rolling. Acceptable on a server - maybe. On a desktop? No. If it were up to me, I would centralize this app using web services making it possible to use whatever the f you want on the server, and then go with .NET for the desktop apps. If you were to use MS on the server, you could even use .NET remoting. My final opinion: you're screwed if you're asking this community for platform decisions. Take some CS courses - preferably some that deal with development life-cycles.

    1. Re:THIS IS SICK!!!! by sm00th · · Score: 1

      Development lifecycles you say?

      Java has been around for almost 10 years+. Refresh my memory with some of those CS courses you took (that emphasized, in your opinion, "development lifecycles"), how long has C# or .NET been around?

      I'm not goint to lower this thread into a Java vs. C# debate.

      RAM is cheap. Learn Java and make some cash, so you can afford some more RAM to run Java apps, so you'll stop "bashing."

      You sound like an angry MS nut that just realized C# isn't going as Microsoft planned, and you're resorting to those protective instincts that are inherent in any MS programmer - "bash and use lots of buzzwords."

      --
      There's pissing contests all over. OSS is just another one.
    2. Re:THIS IS SICK!!!! by NoelWeb · · Score: 0

      Yeah, Development Life-Cycles, like when you start a project, and you finish it, and deploy it, and modify it, and deploy it again. Get it? It's a good idea to know what all your goals are when you're determing platform. This has nothing to do with my liking of .NET over Java.

      For the record though, I am an angry MS nut...

    3. Re:THIS IS SICK!!!! by NoelWeb · · Score: 0

      Oh, ok... well if you're not man enough to do it, I'll lower the thread myself: First, buying more RAM is supposed to be an acceptable solution for an enterprise app? What cracker-jack box did you get that from? What happened to scalability? Face it, C# is faster for just about any real app. Sure, there are plenty of tests and sims that argue the point either way. Do some thinking Mr. Programmer... how many people build their 3d engines in Java? While that may seem to be a moot point to some, it speaks legends to me. Java isn't used in a lot of cases, because it is friggin slooooow... unless of course, like you said, just get more ram. In this case, we're not talking 3d engines, but it just goes to show, again, that Java is friggin slooow. Also, if "development lifecycle" is a buzz-word to you, then you're not a programmer, instead, you're just a hack. FYI, if you don't follow development life-cycles, then you wind up with unmaintainable apps, regardless of platform. That is, unless of course your app is just 11 lines of PERL. ;) I write Java, and C#, and even VB. Of all of them, I prefer C#. But doesn't it seem funny to you that even VB.NET beats the crap out of Java? I know I'll get fragged for that comment, but do a simple hello-world with both VB.NET and Java. I have, and the results didn't shock me at all.

    4. Re:THIS IS SICK!!!! by Anonymous Coward · · Score: 0

      This man speaks volumes...listen to him.

      I'm a linux guru, but the above post hits it spot on. Are 80% of slashdot readers unemployed students or something? I don't think any of them have industry experience like the one who posted above...

    5. Re:THIS IS SICK!!!! by vettemph · · Score: 0, Flamebait

      So, You're saying that slashdot should scratch that "Stuff that matters" from its logo just because some people post angry replies full of "You suck, Thats screwed and Take a course!!!"???? If slashdot is a waste of time it is your fault. If slashdot is useful it is your fault. Slashdot is what "you" make it. Someone should take your semi-informative post and reword it so it's appealing.
      Cheers,

      --
      The government which is strong enough to protect you from everything is strong enough to take everything from you.
  179. Zope + Plone by jalet · · Score: 1

    Zope and Plone is the way to go. These tools are RAD for the web, you'll have to learn them, which is hard, but then I guarantee that you'll save LOTS of time !

    --
    Votez ecolo : Chiez dans l'urne !
    1. Re:Zope + Plone by tanjavuru · · Score: 1

      yee haw I see one more. we at zeomega use this for our healthcare apps

  180. Use Java and .NET by Anonymous Coward · · Score: 0

    We are using Java because that's what we do and because it's platform independent if you're careful. and then we publish C++ or .NET bindings for the customers who are using the other languages or development platforms.

    We use Codemesh Juggernet and Junction products and they work very well. They use JNI on the client so you need a JVM there but they are much faster and nicer then using webservices. These tools are not free or open source, but codemesh offers an optional commercial source code license. We saved a lot of time and money by using the tools and we are still saving because we can easily regenerate the bindings each time we change our Java product.

    I believe that Java is the way to go for development but that doesnt automatically mean that your product can only be used by other Java developers. Codemeshs products worked well for us but I am sure there is a variety of other products available that solve this problem. We chose Juggernet and Junction because we liked the performance and getting everything from one vendor and because the support is good.

  181. use Gecko/XUL with js/python for the client by cruppstahl · · Score: 1

    Have a look at Komodo by Activestate.com (you can get a free trial version for 30 days) or sunbird (mozilla calendar), firefox, thunderbird. they are all based on gecko: write the UI in XUL, a XML language, and the logic is implemented in Javascript, Python or C++. These languages can be mixed with XPCOM, the Cross Platform Component Object. the server side logic can be implemented with java or .net (i would prefer java for servers, so you don't depend on M$), the protocol can be SOAP, XML-RPC or simple HTTP forms.

  182. The Age Of MDA Is Here. by militiaMan · · Score: 0

    Why develop for a specific language?

  183. What experience does your shop have? by bigbird · · Score: 1
    Most replies have concentrated on the relative benefits of .NET vs J2EE. These are important. However most important is what experience your staff have in the technology you choose.

    If you are currently a Java shop with no .NET experience, you will most likely fail with your first .NET project, unless you bring in some experienced mentors. And vice versa, of course.

    With the right experience and good project management, either technology will succeed.

  184. Both are in pretty common use by Anonymous Coward · · Score: 1, Informative

    Both .NET and J2EE can be made to work. In the UK (where I live) the National Health Service has launched a programme to provide nationwide healthcare record integration. It's going to be expensive (around $6bn so far and some projections estimate a total cost around 10 times that). However, it'll be the first such system in the world and will have useful patient benefits (e.g. get admitted to A+E - the ER for US folk - and the doctors there will be able to access your medical notes even if you've never been to that hospital before). More detais of the programme here and here.

    As for what technologies are in use, the local service providers (of which there are 5 with about 12 million patients each) are mostly using Microsoft-based solutions, mainly written in .NET, and the national facilities (which provide services for all 60 million patients [approx]) are mostly built using J2EE on Oracle on Solaris. At the moment, the middleware is SeeBeyond e*Gate.

    Speaking personally, I have had difficulty integrating .NET 1.0 with other things using SOAP - it doesn't seem to interoperate well. Maybe that's fixed now though.

  185. Does the health of people depend on your software? by stesch · · Score: 1

    Than please use neither of them!

  186. medical or hospital is not healthcare by Anonymous Coward · · Score: 0

    medical mafia, i.e. selling expensive drugs that do not cure but only relieve symptoms for a while, is not healthcare to me. I hate this kind of amalgam ... grmbl. I prefer natural and holistic healthcare, a bit more interesting to me, and it does not require expensive software. Please use technically-precious technologies like J2EE and .NET and their valuable technicists for more appropriate purposes.

  187. Healthcare Market Considerations by tacocat · · Score: 1

    I think you need to understand some more options about the audience you will be dealing with. Not only at the client level, but at the larger architectural and business operations levels.

    As for the software considerations, It's very possible to find examples of fast/slow, secure/insecure, java/net applications that will serve everyones examples. The point on this is you can find good/bad developers for any software platform. Remember that you get what you pay for.

    Getting back to the Health Care System. You remark that Hospitals are the audience, but are they the only audience? There are also some massive security requirements that you will have to address. If you can't meet these government regulations you simply won't be doing business with anyone.

    The Health Care industry, despite it's spiraling costs as experienced by anyone needing services, does not give software systems a financial priority, including OS upgrades.

  188. This would be a lot more credible if... by kahei · · Score: 1

    ...you actually said what went wrong, rather than 'humpty dumpty fell off the wall'. You _do_ see how that statement doesn't tell me about why .NET didn't work?

    --
    Whence? Hence. Whither? Thither.
    1. Re:This would be a lot more credible if... by Daniel+Boisvert · · Score: 1

      I doubt he knows (or MS does, for that matter). If they had the top MS techs on-site and had to rebuild the entire server room from bare metal to magically fix the problem, it implies some sort of Windows Wonkiness[tm]. I've seen more than enough of that to believe him.

  189. Not true by dna_(c)(tm)(r) · · Score: 0
    1. Would you consider C slow if you had problems with a slow Linux box ? or would you try to find the reason why it is slow ? Java with badly written gui's can be very slow, but absolutely does not have to be
    2. Listen to the hard drive make a bunch of unholy noise the whole time.
      I guess the program is started with insufficient memory for the task at hand, or it is written to use a random acces file or something, killing performance that way. Type "java -X" for info on memory configuration at startup of VM
    3. I have worked with big java apps on Mac OSX, without any problem (Eclipse,...)
  190. Viability of Mono by baquiano · · Score: 2

    Mono (.NET) for non-Windows applications is just as viable as Java for multi-platform use. You could do .NET AND Mono deployments (or just pick one).

    Mono reached 1.0 only very recently (July-August), and I'm not aware of any significative medium to large deployment of production-quality systems based on it yet. Java is a mature and proven technology, and while it has its problems, equalling Mono to Java in terms of viability, as of this date, is IMHO overstretching Mono's virtues.

    I would rather wait until Mono matures before risking a deployment on the healthcare industry.

    --
    You're bound to be unhappy if you optimize everything. --Donald Knuth
    1. Re:Viability of Mono by databyte · · Score: 1

      Depends on your implementation and support staff. You could code in Java and still fail, depends on how good you are at not just coding.

      I've seen complicated linux/c++ installs fail where Delphi and VMS work (yes, old skool mainframes). Your workflow, interface, up-time, training, support, etc - all that - equals a successful product. Not what IDE you fire up.

      Of course, if your starting fresh - why start with COBOL? That was my point. Don't worry about what you pick from the IT side but instead from the "what's the best thing for my product".

  191. Both suck by smoon · · Score: 1

    Seriously. On the java side you get immense complexity, and on the .net side while all of the choices are made for you, there is still a lot of complexity. Either platform requires a lot of tribal knowledge to get started with.

    If at all possible look at a PHP web-based front end. The interface can be tricked out with some nice javascript style features (e.g.: google gmail) and keep your back-end database interface open, so you can bundle postgres for free, or they can use oracle/db2/whatever if they want to.

    The big win for PHP is time to market -- you can cobble together an app _very_ quickly by avoiding the 3-6 month j2ee/.net learning curve. It also lets you be more price-competitive since you can deploy it on a really inexpensive platform. So if your competition quotes $50,000 which has to include fast servers (.net is just as resource hungry as java), windows licenses, database licenses, and several additional months of development time, you can quote $40,000 and still have a bigger profit margin since you don't have the higher-cost platform.

    Make sure to offer a 'reporting' module that is basically a $500 copy of crystal reports with a bunch of reports you've developed -- don't fall into the "I'll roll my own reporting engine" trap.

    If 'rich' interfaces are required, don't discount javascript, xul, or even flash -- all of which eliminate the 800-pound gorilla that is .net/java.

    --
    "But actually trying to use m4 as a general-purpose langage would be deeply perverse" --ESR
  192. Listen well from a .NET programmer! by The+MESMERIC · · Score: 1

    Go J2EE.

    Period.

  193. Beware of EJB's. Make it lightweight Java by johnjaydk · · Score: 3, Insightful
    Personaly I prefer Java. BUT you need to be aware of a couple of dangers.

    First of all don't use EJB's unless you have to. If you don't need distributed transactions then stay away. You don't want heavy weight frameworks to drag you down. Read: Better, Faster, Lighter Java. http://www.oreilly.com/catalog/bfljava/ For a free introduction read: http://www.onjava.com/lpt/a/4744

    My personal advice is a stack made of:

    1. JSF for the webfront. Struts if you are a bit more conservative. http://struts.apache.org/
    2. Spring for the business logic. http://www.springframework.org/
    3. Hibernate for persistence. http://www.hibernate.org/
    If your need a thick client then use Swing instead of JSF. Then you can stick RMI in between two of the layers.

    Don't forget to have fun.

    --
    TCAP-Abort
  194. Good music.. by jimmyCarter · · Score: 1

    I just love that Neil Young classic "Southern Shop". Hope Skynyrd doesn't retaliate with "Sweet Object Oriented"..

    --

    -- jimmycarter
  195. App servers expensive? by kaiwai · · Score: 1

    Pulease! grab a sexy Opteron server from SUN, grab the SUN Enterprise System Software; includes everything you need for night of fun and excitement.

    Voila, for $100 per employee, you'll have a app server, web server, directory server, messenging, collaboration and mail server.

  196. Re: C# is a particularly nice language by adamclarke77 · · Score: 1
    C# is a particularly nice language. IMHO, easier to use than Java.
    You can sum up the design philosophy differences between C# and Java by counting the number of key words in each. Java has around 50 whereas C# has ~90. Since there is very little difference in what u can achieve with the two languages u have to ask why all the extra syntax in C#? Which is going to be easier to learn? Which is going to have easier to read source code? I guess it comes down to personal preference, concise and elegant or not ;-)
  197. .Net is not such a good idea by Anonymous Coward · · Score: 0
    A big problem I see with .NET is that you are also targeting physician's offices and I've seen a lot of physician who would never touch anything else than a mac. Developing with .Net may simply not satisfy your user base, so make sure that everybody is running a single operating system, and make sure that you won't find a bunch of systems running windows 95 or 3.1 (which you see a lot of times in hospital) otherwise you might have a couple of extra problems.

    G.

  198. Integration to Host? IMS Connect, SOAP for CICS. by donert · · Score: 1

    For S390 based host systems (IMS, CICS) there are J2C adapters. IBM and 3rd party.

    Of course we have no idea if you need such a thing for your product.

  199. Pointers on JSF by johnjaydk · · Score: 1
    --
    TCAP-Abort
  200. J2EE for portability. Who's tax dollars are these? by pelorus · · Score: 1

    If this was in the Uk, I'd vote for a portable solution because I don't want anything tied down to one vendor. ESPECIALLY in government/services.

    M

  201. My advice by jswalter9 · · Score: 1

    I work for a healthcare company, and I have one piece of advice:

    Focus on telling the customers what they want to hear. Better patient care, increased patient load per employee, better morale among clinical staff, etc.

    The specific technology used is meaningless to them. And since healthcare lags so far behind any other industry, you can clearly see the next five years of what they'll be using for infrastucture right now in other industries.

    --
    Retired from software... maybe. Sort of.
  202. Which Products? by nurb432 · · Score: 1

    So i know to avoid those hospitals..

    I dont want either to be used in my healthcare products.

    Id prefer something stable and secure if my life is relying on some piece of software..

    You wouldnt see either of those in my anti-lock brake controller.. Think along those same lines.

    --
    ---- Booth was a patriot ----
  203. Ha, ha, ha. Not. by jotaeleemeese · · Score: 1

    I have been checking the thread and I have seen several truly insightful messages regarding a topic that could appear trollish and dry in principle.

    --
    IANAL but write like a drunk one.
  204. Um, who cares if .NET is on the desktop by betelgeuse68 · · Score: 1

    If you're developing J2EE applications, you are taking about server side development, what does .NET being on the desktop of people's computers have anything to do with your problem space? I would say your very senior manager doesn't understand application development/architectures.

  205. Government Requirements for Healthcare Software by macguys · · Score: 1

    A little off-topic but still salient to the discusion: In your post, you don't say what country you live in the south of. If it's the US, be aware that there are two sets of rules that your software will have to live under. HIPAA of course, deals with access to protected medical information. 21CFR11 deals with software as a "medical device" and in many ways, is more difficult to work with than HIPAA. The problem with 21CFR11 is that it's a moving target without real specific rules.

    The main things to keep in mind are version control, encrypted signatures, audit trails for everything, access logs for everything.

    --
    wherever I go, there I am.
  206. Oh, I Know, I Know by CastrTroy · · Score: 1

    Having just graduated from software engineering I can tell you the answer to your question. The answer is, is that there is no answer. We have no idea what the project is about, what it's supposed to do, the requirements, or anything. The only thing we know is that it's for the Medical domain. Anyone who gives an answer to this question has no idea what they are talking about.

    --

    Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
  207. Try Mozilla by Anonymous Coward · · Score: 0

    I've built two applications for johns hopkins cancer center and they've all used mozilla. The nurses on the floor love the applications. They support printing and the controls are fast and highly usable. Putting the applications together was a snapp because of how easy it is to build applications using the mozilla framework. I think once xulrunner is here more people will start seriously considering mozilla as a framework, but why wait. The only thing you need to do today to start using mozilla as a development framework is download firefox. To start your own app just run firefox using the following:
    firefox -profile yourprofiledirectory -chrome chrome://myproj/content/

    setup your installed-chrome.txt
    put your chrome files in the path referenced in installed-chrome.txt. Write a simple batch script for calling firefox or put it in the short cut, either way. Or write your own exe to start firefox.

    xul, js, and c++ the best of all worlds, scripting, xml, and high performance C++

  208. Hey, it's your kidney... by JumpingBull · · Score: 1
    This is a safety issue, involving critical care decisions by interns already on hour 81 of a standard 40 hour work week, and the emergency room is crowded with the current fallout from a local riot. Think downtown Detroit in 1967.

    I have heard stories of MS products concatenating records in a medical environment. The scheduled breast implants to an 85 year old man in for bypass surgery didn't happen, someone noticing unusual record mismatches with the patient on the gurney...

    whatever is decided, Flag in RED possible problems and database sanity check failures. Write as if you are addressing someone who has english as a second or third language. Put the time critical information FIRST. Get real EM staff ( doctors, nurses and the technicians that would usually never see a live patient to check for clairity on the screens, reports, tickets and the importance of which procedure to do first.

    A simple test - standard procedure involves taking the blood pressure and pulse. There is bright red blood on the interior thigh. Should you follow standard procedure, or check to see if the femoral artery is cut. Time to bleed to death from such a cut is about 7 or 8 seconds, depending on severity.

    And your choice is??

    1. check the organ donation card if he is non- white.
    2. check to see if he has up to date medical insurance
    3. get the janitor to park him in an unused hallway, until someone notices.
    4. immediately leave the scene, making sure you have witnesses in the coffee shop.
    --
    This is progress?
  209. BSD is UNIX by Anonymous Coward · · Score: 0

    BSD is UNIX. Linux is a UNIX work-alike and, for all practical purposes, the same as UNIX (but SVR5 instead of BSD). There is a great chart showing the history of UNIX at http://www.levenez.com/unix/.

  210. The biggest health care network is going J2EE by Anonymous Coward · · Score: 0

    The US Dept. of Veteran Affairs, which comprises hundreds of hospitals, is developing in J2EE for their future integrated health care system. Mumps is out; Java in.

  211. Ask the HIC - They do this for a living by Hyperhaplo · · Score: 0
    HIC = Health Insurance Commission - http://www.hic.gov.au

    Check the web pages. Find an email address and ask them. They have a PKI section in their IT Division (PKI in ITSD).

    On that note they also have a careers page :)

    --
    You have a sick, twisted mind. Please subscribe me to your newsletter.
  212. Talk about FUD by Anonymous Coward · · Score: 0

    That has to be some of the biggest spewing of bullshit I have ever heard. I work at Microsoft, in particular in dept that deals with .Net success stories, and the situation you described has never happened anywhere.

    1. Re:Talk about FUD by Anonymous Coward · · Score: 0

      > in dept that deals with .Net success stories,

      And this was a failure. I'm on my first cup-o-joe, and I can see a discontinutity you could fly a 747 through.

  213. Why ask slashdot? by kuzb · · Score: 1

    Asking the slashdot crowd whether or not to use a Microsoft product is kind of like asking a large group of people whether they'd prefer to have sex with beautiful women, or stab needles in their eyes.

    Sure, you're going to get a few who will take the needles, but you already know what the vast majority is going to say. While I'm not a fan of .NET, I'm not very partial to Java either. I'm pretty sure this is just another excuse to bash Microsoft.

    --
    BeauHD. Worst editor since kdawson.
  214. The difference is that SUN is not a monopoly by Fished · · Score: 1
    Yeah, both Sun and Microsoft hold patents. However, the crucial difference is that Microsoft is a monopoly that has a demonstrated willingness to use their monopoly power to kill competitors. Sun, on the other hand, could never force everyone to run Java on Solaris, because to do so would simply kill the language. Solaris simply doesn't have enough market share to support it.

    Furthermore, Java has signifficant support from other industry leaders (like IBM) with significant patent portfolios. This means that, if Sun ever did try to play nasty, the other companies who are in the Java market would probably get just as nasty in return.

    The net effect of all this is that, while both Java and .NET are patented in their various parts, the probability of getting hurt on Java patents is much less. Or, put it another way, Microsoft is evil, and you shouldn't sell your soul to evil. It's bad form.

    --
    "He who would learn astronomy, and other recondite arts, let him go elsewhere. " -- John Calvin, commenting on Genesis 1
  215. .Net, IMO by nikkoslack · · Score: 1

    As a .Net developer myself, I endorse it over J2EE. Compatibility and ease of maintenance are the main benefits. The ./ community can't diss .net, just look at the Mono http://www.mono-project.com/about/index.html project. C# has actually gained pretty good legs as a language standard. It even has ECMA http://www.ecma-international.org/publications/sta ndards/Ecma-334.htm certification, which DOES mean something.

  216. Why J2EE? by hey! · · Score: 1

    Curious. Why J2EE?

    Over the years, I have discovered somthing. Java programmers love frameworks. Too much. Ditto for elaborate libraries and APIs.

    So, when a Java programmer working for me trots out some bit of framework pixie dust, such as JAXB (which is cool, I admit), I've learned to say: exactly what is this going to do to pay its way IN THIS APPLICATION AT THIS TIME? Is this the simplest way to deliver the required functionality in the current or next delivery? If the answer is no, then my response is that if you design your code well, we can reuse it with that library/framework/whatever when that framework is able to justify itself.

    Java programmers often have a morbid love of complexity. Indulge that love, and an application becomes a morass of libraries (excellent though they may be) that force on it an incoherent mass of conflicting paradigms. The excellence and breadth of the resources available to the Java programmer are a strong argument in Java's favor. The inability or unwillingness to use these resources wisely is strong argument in dot Net's favor.

    Keep things simple and focused on customer requirements rather than products. IF in that context, you can DEMONSTRATE that some PART of J2EE is a good starting place for this application, by all means use THAT part. DON'T take the entire J2EE platform as a starting point and then feel obligated (or even entitled!) to use every piece of it.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  217. Here's the thing: by Anonymous Coward · · Score: 0

    1. Speed
    In terms of speed, you can natively compile Java; but I am not aware of any software that lets you do that for Windows (J++ doesn't count). .NET applications can be natively compiled for Windows.

    2. Cross-platform (compile once, run everywhere)
    Java's JVM is an odd beast: each JVM behaves differently on each OS. A java application that works beautifully in Windows is not guaranteed to run as you intended on Linux.

    3. Both JVM and .NET are memory hoggers (unless you decide force a native compile).

    4. You don't want to sell a front-end written in Java to a Windows user that uses Swing. There are good java frontends, though: Eclipse, and Azureus, for example.

    5. If it were up to me, I'd write everything in C++. :)

  218. Existing Technology by Anonymous Coward · · Score: 0

    I'd suggest checking out some existing open source EMR/PM solutions already in existance. Including (but not limited to) OpenEMR, FreeMED, Care2x, TORCH and Vista. Vista especially, it's developed/used by the VA. It was recently opened up and the small office version is currently in beta. Check here for some more info.

    http://www.linuxmednews.org/

  219. Important! by Mattcelt · · Score: 1

    Don't forget HIPAA! Make sure all developers go to at least one week-long security programming course before commencing work on the design for this application. That may actually help make the decision for you, since there are outstanding security issues for both J2EE and .NET - at least you'll know what you are getting into.

    Remember that you can (and will, if your clients have any sense at all) be held responsible if your application doesn't conform to HIPAA requirements for data protection and integrity. That is a large burden to bear, believe me.

    1. Re:Important! by WebCrapper · · Score: 1

      This is very true. I have a few applications that the health care industry could use and with LAMP, I can provide them very cheaply, but the cost and time involved with making sure everything was HIPPA compliant was too much for my 1 man design shop. Ultimately, the same application happen to work for another industry instead. Maybe one of these days I'll sit down and do all the requirements for HIPPA.

      If you want a hint on how HIPPA compliance is an issue, read over the HIPPA bill (more specifically the part about computers and electronic records) and you'll get a very rough and legalized idea. Even if its just a simple chat program, that program must copy each chat transaction into a database in case an issue comes along with those people. Email: logged, etc...

      Other than HIPPA, I've noticed that its very hard to get into the door with most health care providers. Since your company is bigger than mine, it may not be an issue, but be prepared for it to be brought up. Most of these companies still believe in the "bigger is better" principle.

  220. Am I blind? by hsoft · · Score: 1

    I don't see any mention of a web application in the question.

    I think that Python would be a *very* good option. Java is ugly (Yeah, I know, stating this is asking for Troll mod points from the java fanboys.), .Net is... Microsoft, and Python is just totally graceful.

    With wxPython, you can build cross-platform GUI application very easily.

    I must say that I'm totally biased here. I made the leap into python/wxpython 3 weeks ago (I used Delphi before that), and I absolutely love it. You don't know the joys of programming unless you tried the list comprehensions of python ([func(x) for x in y if cond(x)]).

    And I never liked Java nor C.

    --
    perception is reality
    1. Re:Am I blind? by tanjavuru · · Score: 1

      python has tons of web development modules and if you want to use an app server use zope

  221. It doesn't matter by elnyka · · Score: 1
    What matters are the requirements of the system/solution you are about to implement. You've worked in a different industry, so try to see what parallels exist between your previous projects (successes and failures) and this one you are about to engage.

    If your team has never worked with J2EE or .NET, I'd say just pick one and stick to it. Technological details aside, if you are good with one, you'll be good with the other. Choosing one over the other won't kill you. What can kill you is either one of the following:

    1. not understanding the project requirements
    2. not understanding external dependencies of the project THAT YOU CANNOT CONTROL - db dependencies, mainframe dependencies, external systems, EDI shit, etc.
    3. not establishing the scope of the project - thus leaving the customer(s) free to ask for new features anytime
    4. no clear SLA
    5. bad software project management
    6. customers that are IMPOSSIBLE to work with
    7. not understanding the limitations of the choosen platform, be it J2EE, .NET, Saruman's magic tricks or whatever:)

    Don't fall for the trap of this platform over another one. Once you pick one, you may want to dedicate one or two of your team to really dig the living crap out of it, and understand its power and limitations. The rest of the team should concentrate in getting all the other crap right - requirements, SLA's, establish good contacts with user's liasons, internal development/testing/release/maintenance procedures, etc.

    One thing above all (which a lot of folks forget) is to understand how the hell you are going to deploy and maintain your solution for a given client. Lots of folks develop the coolest solutions in J2EE and .NET, just to find out that they can't deploy and maintain the sucker without lending a kidney.

    Do that, and you should be fine. As for job marketability, either J2EE or .NET skills will do fine. What matters is not so much having J2EE or .NET skills, but solid software engineering/architecture ones ;)

    Peace and merry xmas!

    - Moi.

  222. Things that mater by canuck57 · · Score: 2, Informative

    When developing code we often forget the longer-term impacts that often hinder us later.

    Take Java versus .NET. If I develop in Java then I don't have to worry about doctors who might want to use it on a Apple OS/X. If the world goes Linux it runs on Linux. Or perhaps some new tablet PC is running BSD or Linux. It may not even seem important now but going .NET limits you.

    Very few programming projects are truly unique, as they often borrow source or copy the logic of existing systems. Would it not be nice if you could share the source code between Windows, Linux, OS/X, AIX, Linux, BSD, HP-UX and Solaris? If your shop only runs Windows now can you say this will be true for 2, 5 10 years down the road?

    Even if you are a Microsoft only shop, you can borrow source code from Open Source Java Linux projects to help with the coding. .NET does not allow you this.

    Having such a broad range of platforms it runs on generally means the programmers are more skilled and more source code is available. More skilled programmers often produce programs that crash less lowering maintenance and increases user service. .NET does not offer any of this.

    Why .NET then? It's best redeeming value is that it takes lower skilled programmers and locks in that you must use Windows to run it. Although the product is OS bound and perhaps even less reliable you may have the skill sets to do it faster. If Microsoft jumps the price of their products you're stuck with it as you would not want to pay the price of re-coding all your projects. Techno-lock in if you will.

    In a hospital, information security must be an issue. If you go just by the numbers on CERT or other vendor independent source .NET and Windows itself are relatively insecure when compared to other options. Java is by no means 100% secure, but at least it began its life with security as part of its design. In Java, security was not an afterthought or refit.

    Historically languages like Java will last a lot longer than .NET. This lends longevity to code and effort. From your career point of view, would you rather hedge your skills on something that is OS independent or sink your precious learning time into a vendor slotted technology where if they fail you have to re-learn something else. We often forget it takes years of effort to become really good at a programming language.

    Java offers a lot. If your manager does not use Java over .NET then he should have to back it up with some good reasons beyond his knowledge that one of his mutual funds just happens to own some MSFT stock.

  223. Java is not slow! by Anonymous Coward · · Score: 0

    We are a financial software shop and we have used it to developer real-time trading applications.

    java slowness argument is very old fashioned. Unless you are talking about embedded mission critical military apps, then don't even let the slowness argument come into the picture.

  224. Mod Parent Up by Anonymous Coward · · Score: 0

    insightful, practical advice from experience.

  225. Not professional by wassy121 · · Score: 1

    You can tell this topic was created by someone without the proper tools to implement a Healthcare grade system for their uses. The healthcare system is _very_ strict. The only department more strict than the healthcare department is the Department of Defense.

    That being said, the Department of Defense has a strong predilection towards Ada. This is due to Ada's overly-typesafe implementation. Java and .NET would never be used on these sorts of real-world government industry. .NET and J2EE is usually done by people in the faster-paced industries like web design, internal IT projects for small/medium companies and pet projects. The normal XP style programming that is used in J2EE and .NET is _not_ suitable for a healthcare environment. You have to be HIPAA compliant. This is not possible with the XP style of programming, since you will not have the fast release cycles necessary for XP programming. It will be one large rollout, and a massive retraining for all the healthcare employees.

    This being said, I think the question is moot, since they will never get the job using .NET or J2EE. If you really wanted my vote, I would vote for Ada.

    --
    --If I said something interesting it probably wasn't correct
    1. Re:Not professional by EvilArchitect · · Score: 0

      {sound of the hook being set}

      Not to be overly critical, but tying XP to Java (or .NET) directly is a mistake. I've done Java development since the early days and I did my first "XP-like" project within the last 7 months. Pure XP is a little silly, IMO, but some of its tenets are valuable. Quick releases, customer involvement, less focus on C.Y.A.-style requirements. All these things make an XP project flow. On the other hand, paired-programming didn't work, and seems silly from almost every angle that I can see it from.

      I've also done a HIPAA compliant system in the last couple of years (ph33r my l33t self-validation!), so to further repudiate, XP development, and even XP-like development, is perfectly acceptable in a HIPAA compliant system.
      Dismissing the fast-release concept as a deal-breaker demonstrates a minor misunderstanding. Releases in XP don't necessarily constitute a system-wide rollout and system security (and it's overbearing parent Privacy), which are primary foci of HIPAA with regard to software, can easily be made an essential element of the application.

      As for the closing troll, clearly lots of developers seem to get the jobs using .NET and J2EE. When someone at my house goes to get ice cream, I vote for butter pecan. But I'm the only one who likes it so it's not too popular.

      --
      I'm just a caveman programmer. I don't understand your strange, "modern" ways of thinking.
  226. Money talks by Freeman-Jo · · Score: 1

    Well, I'm not very a programmer, just did some programming a while back. So I'm not talking about PPOV(Programming Point Of View). As you and others have pointed out that most hospital use Windows OS, so think of .NET as current money now and J2EE as future money. While it make sense to think about what you can do in the future, it make much more sense for a small company to grab the money that is there now and hoping to get more later.

    --
    -=-=-=-=-=-=-=-=-=-=-=-=-=- If picture worth a thousand words, how many megapixels is it? -=-=-=-=-=-=-=-=-=-=-=-=-=-
  227. VB6 (was Re:Java) by ddkilzer · · Score: 1

    And what will you do when Mainstream Support for VB6 is retired on March 31, 2005? Extended support lasts another 3 years, but Microsoft will only provide security fixes for free during that period. You must pay (or have a support contract) for all other support requests. And when Extended Support ends on March 31, 2008, you're really screwed.

    Why would you want to stay with VB6 again?

    1. Re:VB6 (was Re:Java) by Anonymous Coward · · Score: 0

      Exactly when was the last time you called Microsoft for programming language support?

    2. Re:VB6 (was Re:Java) by the+eric+conspiracy · · Score: 1

      Exactly when was the last time you called Microsoft for programming language support?

      In the corporate world the issue is whether or not you can get support when you need it.

  228. Go with what the industry uses by CokoBWare · · Score: 1

    The industry uses Windows in the office, so .NET is a logical choice. I happen to work for a healthcare services intermediary and I know that using Windows and .NET technologies is part of our ongoing strategy to developing tools to help both sides of the equation: providers of healthcare services and the payers of healthcare services. It's an easy choice. A small fraction of the healthcare market uses J2EE on a client level, and large hospital and physician networks want to use the technology standards that the vast majority speaks n: Microsoft.

  229. Zope and python by tanjavuru · · Score: 2, Informative

    We develop applications for health insurance (HIPAA compliant) at zeomega. These applications involve patients payors and providers alike so lots of PHI. we use FOSS platforms zope python ingres postgres mysql on linux runs like a champ , cuts down development time in half as python is easy to learn and program in. we used to do development on websphere before. not anymore. as far as .net goes ugghhh we dont want to wait for support on an 800 number helping some idiot thousands of miles away to fix his own bugs and dont even get me started on the security nightmare

  230. Re:making money in the medical industry by tanjavuru · · Score: 1

    the money is with the payors in this industry providers dont have deep pockets like payors. You will find longer sales cycles for providers than you do for payors and yes payors pay $$$

  231. Web or GUI by AstroDrabb · · Score: 1
    First figure out if your app is going to be totally web delivered. If it is a web app, your managers points are moot. A J2EE web app is _not_ any slower then a ASP.Net web app. Second, why would you pay for an app server? What small office will have money for that? You can use Tomcat or JBoss both are excellent. If you went with an ASP.Net web app, your customers will now have to buy some MS Windows _server_. Well, you could run your ASP.Net app on Linux with Apache and Mono. Mono is great under Linux for ASP.Net apps in C# or VB.Net (uggh).

    Heck, you could offer your customers a "turn-key" solution. Put together a cheap server running Linux with Tomcat for J2EE or Apache/Mono for .Net. Sell that for a fair price. Your customers just have to plug it in and turn it on. Your customers will have no extra license fees from MS to worry about. If you have any half decent developers on your team, they could write _standards compliant_ HTML and then you don't need to worry if your clients are hitting your web app with IE, Firefox or Safari. If your customers have a net connection, you can plug it into this Linux server you sell them and charge a small annual maintenance fee for support. If there is a problem, just VNC or SSH in and fix it.

    If you go with a fat GUI client, then I personally would do it in Java with SWT (the toolkit used by Eclipse) for the GUI. SWT is very fast and lightweight. You can even get good SWT GUI designers to make coding easy. By going with Java for the GUI, you don't have to worry about what OS your customers use.

    If you go with .Net, then you should use Mono and GTK# or QT# for the GUI. That won't lock you into just MS Windows for your customers. You would be able to deploy to Mac, Linux and Windows. I know my doctor uses an iBook. She carries it into the exam room all the time and manages all her patient records from it. So if you went with an MS-only solution, you would lose customers like her.

    If you are developing an internal only solution, then use what you want. However, if you want to sell software (especially as a small company), you really should give your customers the most choice. If you went with a fat GUI client, you could sell a turn-key solution that ran Linux with Mono. Again, your customers will have no license fees to worry about, just your bill : )

    I work as a senior programmer for a fortune 500. A few months back we went through a similar situation. However, we don't sell software, so everything we develop is for corporate use only. We had two camps. The J2EE camp and the .Net camp. We even hired three outside consulting companies to help make the choice. All three companies said that our web apps should be done in J2EE. However, politics won out and now we have different groups doing different things. Some are doing J2EE and some are doing ASP.Net C# and I get to be involved with both.

    IMO, your senior manager should have no say in the technology used, just the features. The technology choice should be done by those who are going to _implement_ the technology.

    "My senior manager recommended using .NET. His argument is that most desktops he has seen in hospitals already run Windows, the development time will be cut down for this small to mid-size project, rich desktop clients are possible and there will be no application server costs involved. He also contends that .NET has more templates and abilities than J2EE (which is simply 'web targeted' in his opinion.

    That sounds like he has already be "won over" by some MS sales guy. .Net development is not going to be any faster then J2EE. .Net might even be a little slower at the start because you have

    --
    If Tyranny and Oppression come to this land,
    it will be in the guise of fighting a foreign enemy. -James Madison
  232. High level overview - IMO by shuad · · Score: 1

    Clearly, there are a great many factors which could go into this decision, and really should. If we are looking purely at .NET (specifically C# and VB.NET) versus Java (J2EE), I think there are some things that we should consider. First, what data base connectiveity is available with each of these platforms? Both .NET and Java have a myriad of tools for connecting with whatever data base flavor your project requires. (I know all the .NET haters are going to come out and say that Java is easier to connect to things, but I found that you can connect to almost anything from within .NET, with relative ease.) I see no real advantage for either choice here. Second, what is the availability of prewritten chunks of code that you could use (even buy) to make your application development life cycle shorter? .NET and Java appear to have the same amount of commercially available controls and back end components. Again, there doesn't appear to be a winner here, with the possible exception of Java having more free components (due to the open source movement) because open sourcers hating M$. On the other hand M$ has written and tested several very helpful pieces of functionality which can be plugged into your .NET application (called Code Blocks). Third, how hard is it to support and update your application (assuming it's an application that's not web based)? In the case of supporting, I think we also have a tie. In either case, you are going to have to see the problem, you are going to have to work on it. There is no magic bullet that let's you never have a problem in software (I don't care what language you write it in, nor what operating system you write it for). On the issue of updating your software, M$ has supplied a very powerful mechanism for programming your .NET software to update itself when it finds that something is out of date (you have it check the version number of the assembly in question, even done remotely and then download your updated assembly). Further, this functionality is encapsulated in a Code Block which is virtually "plug and play". Now, I admit my ignorance, but I don't know if Java has something similar. Please inform me so that we can have a complete disclosure before making a recommendation. Fourth, how hard is it to secure? According to other posts, there have been some holes found in the sand box that sits around a Java application. I am sure that they will be found in the .NET CLR as well. I doubt that anything is perfectly secure. In terms of .NET, the security model is tied to assemblies, and each assembly you can lock down pretty tight in terms of who uses it, and how it is used. I would even say that it makes it a hassle for the programmer, since he has to go in and set up the permissions. I am not certain if Java has something similar to this, that is as powerful or configurable. Please let me know. Fifth, where is this application going to be used? It seems, from the other posts that this application is most likely going to be run on windows machine, at least primarily. This gives .NET a potential advantage, since it would be running in its native architecture. Java used to be very slow on windows, I am not certain that is the case anymore. I know that .NET runs smoothly on windows. Sixth, what is the future going to be like? All things being equal, it's clear that the future belongs to Longhorn and M$, at least in the case of large scale systems that require people with no computing ability to use them. I think this is something that /. Often overlooks, your average user cannot use anything more complicated than a microwave (and when I say that I mean, put something in, type the time, take something out, repeat ad naseum). M$ clearly has the majority when it comes to catering to less experienced users. Therefore, choosing .NET ov

  233. Java vs .NET by Kell_pt · · Score: 4, Insightful

    I started reading the whole thread of replies, and I couldn't find a better comment than the one made by the first poster: "Java isn't slow, .NET is not insecure".

    A programmer worth its weight knows that each language has its niche, and for specific tasks there are enviroments that work best. Then there are those who believe the hype and form a concept of things without actually ever having a 1st hand impression. It's a bit like racism, applied to programming languages, and it has a common origin: ignorance. I hope this doesn't sound ecletic, but it probably could inspire flames, since people usually have a hard time admitting their ignorance. But the next time you feel like writing something about Java, .NET, C or C++, try to think wether you have solid facts and a really large experience to support it, or just your idea of how things are, read elsewhere from someone you don't really know.

    Also, the belief that a programmer can only be good in one language is ridiculous. Give a good programmer a month and he'll excel in whatever you throw at him in a given language. And what he doesn't know, he'll learn. Give him a project and a couple months and he'll know things inside out. Maybe he'll have a preferred language, but who's to say that won't change over time? Evolving oneself as a programmer sometimes involves changing paradigms.

    That said, I consider myself mainly a C programmer, then converted to C++. Nowadays I use C/C++ very little, for very specific things or for my private projects (involving OpenGL & C++). I've worked extensively with Java, Perl, PHP, Prolog and bit in a dozen others. I'm in the process of learning everything possible about Mono/C#, and I'm enjoying it.

    I don't really enjoy Java mainly because I find developing in it to be a real pain. When you have learned over 20 different languages, you value freedom of expression, and Java doesn't give you that - it locks you into a syntax that is archaic and not very flexible. I don't like the Sun Java team making choices for me, like not allowing operator overloading and not having propper syntactic support for modern OO concepts like properties. Maybe one day they'll understand the language syntax itself isn't important - just convenient - and will follow the road of Parrot or MSIDL (argh).

    I like .NET for the way it's architectured, but the freedom it gives you in development it takes away in vendor lockin. I initially saw Mono with lots of suspicion, mostly regarding its legal status and possible future implications. Then I spent some time reading about it and ended up dismissing those fears.

    I have recently gone through a process I consider similar to yours, and I don't envy you. It's a though choice. I recently spent almost two weeks studying the whole issue, experimenting with RAD systems for Java, Delphi, C++ and C#. In the end, I ended up adopting a solution based on LAMP2 (Linux, Apache2, PostgreSQL, Mono) - which should not be confused with LAMP (Linux, Apache, Mysql, PHP). Here's the reasons and thoughts:
    - We find C# to be quite more expressive as a language. Mono is in a state good enough for us to use it, which satisfies our needs for platform independance.
    - Java is not modern enough syntactically. It wasn't designed for some of the things it's used for nowadays, namedly GUIs, and that shows. Nowadays, having to write 'a.setLabel( a.getLabel() + "..." )' instead of 'a.label += "..."' looks stupid, and just shows what happens when people make decisions on your behalf based on their beliefs: on this I agree with Anders Hejlsberg.
    - We prefer open source solutions whenever possible. We have many people with skills on PostgreSQL and its internals (we've had to extend it before).
    - Apache is rock solid.
    - Global input from the rest of the team.

    There were, of course, lots of small decisions related t

    --
    "I don't mind God, it's his fan club I can't stand!" E8
  234. Java, but shouldn't you use what you're good at? by tomtermite · · Score: 1

    We're WebObjects developers, for BlueCross (CareFirst), federal Government, and others. Java is the only way we'd ever recommend, and we'd definitely go with the premier web application envrionment.

    But the real answers lies within; you should develop in the environment that is your strength. Does your 11 developers have experience in dot-net? Then via con dios.

    --
    - Ubique, Tom Termini www.bluedog.net - WebObjects / J2EE SOA / iPhone solutions for knowledge workers
  235. n-tier? client-server? toys? by bozojoe · · Score: 1

    I do emergency room software; and well, It depends....

    Windows is most definitely the most deployed workstation in a hospital environment.
    Go to the server room, and you will see the entire gambit from shiny new HP servers, down to small mainframes. This holds true for almost all hospitals over 30 beds.

    So, if your deploying software to the workstation: .Net.
    If your deploying server based software, do whatever you do best: Linux, Sun, VMS, .NET, hell COBOL.

    And forget about security, hospitals are about as secure (inside the FW) as an open cash box.

    --
    lick the cancle button (at least thats what our Chinese QA says)
  236. Coding speed by Egregius · · Score: 1

    If it was about coding speed, the question would be: "Which non-special character APL-family-language to use, J (http://www.jsoftware.com/) or Q (http://www.kx.com/)(formerly known as K)

  237. Jumping the gun by BigLinuxGuy · · Score: 1

    Given that you have stated that this is a new market for your company and that there is no pre-existing knowledge or experience in this markte, I think you're jumping the gun by trying to select a platform. You can successfully implement the new system in any of the available platforms. The best advice I can offer is:


    1. Forget about the platform right now unless it's a constraint.
    2. Focus on gathering and refining the requirements for the system you propose to build based on your customer's needs.
    3. Work out the design for the system and downselect to the platform you choose to develop in based on a clear understanding of the available choices and guidance from your customer base

    If you don't have requirements or a system design and you're worried about the implementation platform, you've already lost the race. Your system will end up being an ad hoc, organically grown, maintenance nightmare. Your best chance for success is to follow some sort of software development lifecycle instead of what appears to be the rush to select a platform and start coding. Factor in the learning curve for the selected platform to your project timeline, but jumping straight into coding before you know the requirements for the system and have a design to fulfill those requirements just leads to a waste of time, money, and resources that culminates in a failed project or worse, a badly hacked up product that results in bad customer relations.


    That's my experience, but your mileage may vary....

  238. I am becoming a Doctor... by Silas+is+back · · Score: 1


    ...working at an University-hospital in Switzerland. Although almost every Desktop System present in the rooms for the nurses runs Windows, about 30% of our Physicians already use Mac OS X on their personal Systems, and more and more the Macintoshes appear in the Doctor's rooms.
    (I do not need to mention the various server-systems like Solaris and Unixes)

    Well, all I want to tell you is that in Switzerland, Microsoft is ALL BUT on the rising bar, and I personally think that you'll do better using J2EE, heading towards the "OS-independent" argument. Freedom of Choice is important.

    regards
    Silas

    --
    this sig is useless
  239. Look at the lessons learned....... by TCook · · Score: 1

    then decide on t the platform and data model. Physician's offices are not the same as hospitals.

    http://www.openehr.org and follow all the references.

    Cheers,
    Tim

  240. J2EE wins the concurrency battle by JPyObjC+Dude · · Score: 1

    If your deployment requires more than about 30-40 concurrent users, depending on complexity of app,an Win.net deployment would probably require multiple computer arrays with complex gateway framework. M$ is not known for building such large frameworks well. Instead they focus on making smaller deployments fast to write in and fast to run.

    On the other hand, with Java you can deploy on a nice juicy 10 processor *nix beast with terrabytes of stripped raid storage. By going J2EE on these systems you can get very high concurrency on one machine. You must have multiple boxes to acomplish this with win32. More computers == more complexity == more problems. With J2EE and Java RMI's (old but good) you can get very good multi-processor utilization.

    Also, J2EE is better at deploying across multiple server farms such a linux array. By using multiple rmi's (one/linux box/processor) and an RMI gateway, you can get a very powerfull, stable and secure system. I get shivers thinking of how Microsoft is able to do this.

    From my experience, I am seeing more and more .net deployments that are having very serious performance problems even though they through tons of bucks at the hardware, they would all have been better off with J2EE. The performance is often related to both high and low concurrency.

    If your deployments are less than say 40 concurrent users, win.net is a possible solution but will be less stable and secure than J2EE on *nix. Above this 20 concurrent users, hands down I would go J2EE. At this level, the cost of extra processors & memory is relatively low cost in comparison to the application development & deployment costs.

    Spend a bit more money on the hardware and you will sleep well having J2EE cranking away.

    JsD

    1. Re:J2EE wins the concurrency battle by PickyH3D · · Score: 1

      "M$"

      I wonder if anyone else ignored the rest of the post?

  241. All Politics Aside by SrSpeedy · · Score: 1

    The decision depends on the background of your developers. With either language you can develop a highly reliable world-class application (folks do it every day). If your developers have experience in developing Pascal, C, or C++ applications then Java is a better platform choice. If your developers have backgrounds in RAD development languages such as Visual Basic, PowerBuilder, etc then .NET would likely be a better choice. The project ramp-up expenses (training-prototyping-design) will likely be very large, but you can minimize that by bringing in a consultant (or two) that is an expert (not just familar) in the platform technology that your group decides upon. Do not fear losing face by letting them lead because if you hire the best available in your market their resource value will be priceless.

  242. .net is the way to go by Anonymous Coward · · Score: 0

    We had no problem with .NET for our medical program. Development isn't what's going to get you. It's the fact that doctors don't know thing one about computers. Half of our bug reports were of things that the doctors didn't know how to use, not actual bugs.

    You should memorize the hippa standards before you even start designing this thou. There are some very important things that will be required to be in your program that will get you into serious trouble if you don't have them already planned for.

    Out side of that your probably already screwed if your asking the slashdot crowd for advice.

  243. According to customers...duh...do your research... by BlackMesaResearchFac · · Score: 1

    ProVation Medical is the leader in a new industry. They only have a couple "competitors" that can muster a single specialty while ProVation MD spans multiple specialties. They also have partnerships with several big players in the industry like Medtronic and Linvatec.

    --
    -- Scientist: You aren't going to leave me here, are you? Boagh! Thump...
  244. A fast Java App by al912912 · · Score: 0

    What about HSQL, a database engine written in Java that has beaten some C++ engines and IBM's Cloudscape? Stated here

    Now that's a fast Java app isn't it?

  245. What did you do? by al912912 · · Score: 0

    What did you do when he said that? Run some syntax analyzed minutes before he tries the compile or just destroy his hopes every day?

  246. .NET/Mono are viable? by turgid · · Score: 1
    1) Mono (.NET) for non-Windows applications is just as viable as Java for multi-platform use. You could do .NET AND Mono deployments (or just pick one).

    Are you sure?

    Last I heard, Mono was an incomplete, slow and buggy implementation if small parts of .NET.

    Please don't kid yourself that writing in .NET or Mono will allow you to produce secure, reliable, effective cross-platform software. You might be able to write something that runs on most modern versions of Windows, and providing you don't use to many of Microsoft's classes, it might run after a fashion under Linux.

    It would be much more sensible to choose Java. It may appear to be a little slow in some cases, but it's mature, stable, reliable and secure. It comes with huge amounts of free classes for all kinds of purposes. If you're scared about it coming from just one vendor, fear not. There are Java implementations from many renowned companies, including IBM (currently a favourite of /.). There are free, Free and Open Source implementations.

    In terms of portability, you don't have to choose between one complete implementation on one OS and a half-done one on one other (i.e. .NET on Windows and Mono on "Linux").

    Contrary to what people will tell you here, the standard Sun JVM compiles to native machine code on the fly by default (you can turn it off with a simple switch), and gcc comes with a Java compiler which generates native binaries from Java source without requiring the JVM.

    I think you'll find that if you choose Java, there will be fewer nasty surprises due to its maturity, and much more Open Source available to use in your project.

  247. my experiences on similar task by jayp00001 · · Score: 1

    While on contract to large company over (8K employees)that has to be HIPIAA compliant AND SarbOx complaint, I saw 2 projects , one with j2ee and one with .net. The .net project is completed and the j2ee project is still going. Both projects were similar in targets and scope ( generating XML reports from 2 different financial systems and claims systems). Java is more difficult to do audit systems on, and is more complex when trying to design role based security. .Net is obviously nor portable, but has all that functionality built in to any number of languages. Since your target is physicians offices and hospitals (where the primary OS of choice is M$); I would work on the .Net version first and perhaps a j2ee version if you see any demand for it. C# and java are similar in syntax (more so than some of the other .net langs) and wouldn't be to difficult to get he core logic recoded. The difficult part (which would be the challenge anyway) would be to develop the security model.

  248. Frameworks Are a Marketing Tool... by was_ms_now_linux · · Score: 1

    ...to ensure the customer keeps upgrading from one version of the underlying platforms to the next version. The quiet fact is that most notable commercial software is not written against any framework but rather a compiled language such as C++. Frameworks are designed purely to enable the relatively unsophisticated and ensure upgrade and mainetenance revenue. Frameworks always result in additional harware being required. >>

    --
    http://www.softwareobjectz.com
  249. its that simple by checkup21 · · Score: 1

    1. java is not slow, swing is. Poeple that dont know the difference should not make any IT decisions. Period. Swing is the reason why java gui apps run anywhere (no, this is not a myth). But you dont have to use it, there are alternatives. See "swt" and/or "gcj".

    2. You dont need twice as much ram to boot java. the actual VMs share the loaded vm code for later on started java apps. Your .NET Runtime has to be started also.

    3. Stop fucking using Excel and start openoffice.org!

    merry christmas.

    1. Re:its that simple by ahdeoz · · Score: 1

      RE: 3 He's complaining performance, not price.

  250. It's the api, stupid by BitwizeGHC · · Score: 1

    First of all, John Dvorak, is that you? This looks like fresh copy for a business IT rag, bolded headers and all, but the main feature being clueless rambling that sounds knowledgeable and sophisticated. Now on to my main point:

    With few exceptions (COBOL, C++) I find I can pick up a new *language* in a matter of hours. Where the time really needs to be taken to learn, is in APIs. Oftentimes, as is the case in languages like Perl and Python, a new API is implied by learning the language, since you have to know the syntax the language uses for strings, regexps, and so forth. Smalltalk is a very tiny language with a very big API. Grokking the syntax can be done in minutes; finding out what all those little objects do, what methods they expose and how they may best be fit together to solve a problem requires lots of time, skill, and creativity.

    With .NET, the multi-language "feature" is really a non-feature, as most .NET languages expose the same API which is the set of classes in the .NET framework. .NET is like the ultimate "skinnable" programming environment; the language syntax tends to be different for each of .NET's guest languages but the underlying API, the base upon which the language is founded, is the same. There's some syntactic sugar here and there for people who are familiar with Visual Basic... but in actuality, .NET is no more multi-language than Java (which as noted elsewhere also plays host to code from diverse programming languages); and, it does not eliminate the far less trivial barrier to adoption that is its class API (which is different from both Java and Win32).

    --
    N4st0r, trixx0r h0bb1tz0rz! Th3y st0l3 0ur pr3c10uzz!
  251. Don't do it by Anonymous Coward · · Score: 0

    If it's in the medical industry, that could mean peoples lives depend on your software. You're questions clearly indicate you aren't up to the task. I strongly suggest you withdraw your bid, or subcontract it to a company that is capable of creating such software and has the experience to know what the top two platforms are capable of without posting help messages on the message board of a news site. Ugh!

  252. Healthcare Development Platform by denny_slater · · Score: 1

    I'll give you a better alternative than either .NET or J2EE. Use Java without J2EE. I have 25 years of large scale systems development. I have used both .NET and J2EE extensively. I would not base any commercial software on either. .NET is locked into Windows (where will you run your server software?), J2EE is not suitable for information systems development (use of a database is an afterthought). Both are too complex. Use Java without the EE. Portability, scalability, runs on eveything, easy to develop/maintain! Reply for details.

  253. The MIT Java Testing Center Report by Anonymous Coward · · Score: 0

    There needs to be a special group at MIT that performs basic tests on a daily basis. They will report each evening on their findings. They will say one of four things:

    "Java is slow."

    "Java is still slow."

    "Java is no longer slow."

    "Java is still not slow."

    That's it, and there would be no more stupid Java vs. .NET/C++/C/etc debates.