Slashdot Mirror


Does an Open Java Really Matter?

snydeq writes "Fatal Exception's Neil McAllister questions the relevance of the recent opening of Java given the wealth of options open source developers enjoy today. Sure, as the first full-blooded Java implementation available under a 100 percent Free Software license, RedHat's IcedTea pushes aside open source objections to developing in Java. Yet, McAllister asks, if Java really were released today, brand-new, would it be a tool you'd choose? 'The problem, as I see it, is twofold,' he writes. 'First, as the Java platform has matured, it has become incredibly complex. Today it's possible to do anything with Java, but no one developer can do everything — there simply aren't enough hours in the day to learn it all. Second, and most important, even as Java has stretched outward to embrace more concepts and technologies — adding APIs and language features as it goes — newer, more lightweight tools have appeared that do most of what Java aims to do. And they often do it better.'" Since Java itself never mattered except to sell books, I still don't see why opening it matters.

766 comments

  1. Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 5, Insightful

    Some would say the same about Slashdot.

    1. Re:Java never really mattered, Taco? Ouch by fm6 · · Score: 4, Interesting

      Yeah, that was a really lame comment. Does Rob think the programming world consists of Perl hackers like him? Thousands of programmers make a living writing Java code.

      BTW Rob, when is the new browsing system going to handle scores correctly? I just started writing a response to a Score 0 AC post, something I never do intentionally. Maybe if you rewrote Slashdot in Java...

      But here's why opening Java matters. When people talk about "opening Java" they really mean "opening Sun's implementation of Java". There have always been open-source implementations of Java, but they've had a hard time keeping up with the latest spec. So if you're distributing open-source software that depends on Java, you really want Sun's Java implementation in the bundle.

    2. Re:Java never really mattered, Taco? Ouch by idontgno · · Score: 4, Insightful

      At least in this case, AC was right.

      Whereas Taco, in this case... not so much.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    3. Re:Java never really mattered, Taco? Ouch by Z00L00K · · Score: 4, Insightful
      Java really matters. It's not perfect in any way, but it works for many cases.

      The good thing with an open java is that it's possible to port to a broader range of architectures with less concern for licensing issues.

      Some may claim that Java is a bastard of Ada and C (or was it C++) but it's not really the case. Ada is a bit locked up in a limited market, which is a bit unfortunate - but things like that happens. If the licensing and availability of Ada had been better then we might have been programming Ada instead of Java.

      And more important is that C# (C-hash as I call it) is created by Microsoft because they weren't allowed by Sun to create a diverged version of Java. And Microsoft always tries to get their own way so we will have to accept that. But some of us may still remember that there were applets around written for Microsoft's JVM and that they did only work in IE - while at the same time other applets didn't work in M$:s JVM.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    4. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 5, Funny

      No Multiple Inheritance. Slower than a 486. Lame.

    5. Re:Java never really mattered, Taco? Ouch by sir_jimmy · · Score: 5, Insightful

      I am the most senior programmer in an up-and-coming destributed-media company. A big part of what I do is (*read rapid*) development of tools for analysis of network topology. Java is a central part of that. Given the rescent lameness of what M$ deems as their state-of-the-art end-user OS, I want my tools to work in whatever play ground I deem worthy. I want my tools to work everywhere, and java is the right tool for the job.

    6. Re:Java never really mattered, Taco? Ouch by gangien · · Score: 2, Funny

      ahh Taco's just still mad over java invaders.

      search for java

    7. Re:Java never really mattered, Taco? Ouch by oldhack · · Score: 2, Funny

      "Please read 1984 before you talk about 1984. Thank you."

      Hell, no. I saw the movie.

      --
      Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
    8. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 4, Interesting

      Java has be come the most popular language(http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html). CmdrTaco however has hated Java since the summer of 1997 "My hatred for Java has never died since that moment." (http://meta.slashdot.org/article.pl?sid=07/10/02/1553218). Sun on the other hand is trying to clean up their act(http://slashdot.org/article.pl?sid=08/06/25/0236208).

      It's been nearly 11 YEARS. I think it's time you bury the hatchet.

    9. Re:Java never really mattered, Taco? Ouch by snoyberg · · Score: 3, Funny

      Maybe if you rewrote Slashdot in Java...

      ... then Slashdot could finally get slashdotted?

      ** ducks **

      --
      Thank God for evolution.
    10. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 2, Insightful

      In all seriousness Java (more precisely JSPs) do a really good job running web sites. Gmail (and many other Google apps) are written in the GWT and that is Java. All the necessary scaling code is built in to the JSP container so as long as you don't do something stupid you can scale the site with out a problem.

    11. Re:Java never really mattered, Taco? Ouch by fm6 · · Score: 1

      You mean you sat through the John Hurt/Richard Burton version? Wouldn't have reading the book been easier?

      If you're talking about any of the other versions, then you still don't know what the book was about.

    12. Re:Java never really mattered, Taco? Ouch by geekoid · · Score: 1

      "Thousands of programmers make a living writing Java code."

      that doesn't mean it matters as a language.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    13. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 4, Informative

      I think VBA is in wider use then Java.
      Not according to the first link I posted (this is kinda why I went through the trouble to get the link...)

      GUI is slow, and the only way to get the code to run reasonably fast is to compile it, which kind of misses the point.
      It WAS slow. Every version of Java has had significant GUI improvements. (http://en.wikipedia.org/wiki/Java_version_history)

      You are also missing that the GWT that runs most of the apps on Google (like Gmail) is written in Java. Java's GUI has issues but that does not mean that Java does not have good uses.
    14. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      You people are idiots. He meant selling books at a brick-and-mortar store using caffeinated beverages. Everyone knows Java (the programming language) rules.

    15. Re:Java never really mattered, Taco? Ouch by lewp · · Score: 1

      I don't think Gmail uses GWT. In fact, I don't think any of Google's major web services use GWT.

      Maybe I'm wrong, or maybe things have changed, but I'm pretty sure I read that somewhere.

      --
      Game... blouses.
    16. Re:Java never really mattered, Taco? Ouch by Bill,+Shooter+of+Bul · · Score: 3, Insightful

      Then please tell us: what are the qualifications for a language that matters, if not usage?

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    17. Re:Java never really mattered, Taco? Ouch by Delkster · · Score: 2, Insightful

      Slower than a 486? On a frist generation Pentium perhaps.

      But then, that's about the right era for comments about Java being slow, too.

    18. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      No dynamic typing, less lightweight than python. Lame.

    19. Re:Java never really mattered, Taco? Ouch by khb · · Score: 1

      Just what about Ada is restricted by licensing? There is a longstanding gnu project GNAT http://www.gnu.org/software/gnat/gnat.html

    20. Re:Java never really mattered, Taco? Ouch by pdusen · · Score: 0, Offtopic

      Why the hell did I get modded flamebait? I was making a joke about the AC, for christ's sake.

    21. Re:Java never really mattered, Taco? Ouch by snoyberg · · Score: 3, Funny

      Ya, i read it on slashdot.

      --
      Thank God for evolution.
    22. Re:Java never really mattered, Taco? Ouch by fm6 · · Score: 1

      Gee, now that you point it out, I feel so stupid.

      No, wait a minute, that's not an argument, that's just a contradiction. What is this, a Monty Python sketch?

    23. Re:Java never really mattered, Taco? Ouch by idontgno · · Score: 2, Interesting

      I think VBA is in wider use then Java.

      Meh. Cranking out spreadsheet macros for arbs and margin traders doesn't count as programming. And I'm not certain what metric anyone is using here.

      Plus, Java sucks.
      GUI is slow, and the only way to get the code to run reasonably fast is to compile it, which kind of misses the point.
      It puts an added burden on all the users, and can be a headache to anyone in charge of wide scale deployment in an organization.

      It's a blight, and we would be better off with out it. Everything done in Java would ahve been done in another language.

      I must commend you on defending your biases and prejudices so long and so well in the face of concerted attack from objective reality. Keep up the good work!

      obDisclaimer: by temperment, I'm an assembler programmer, so I consider all y'all wimps. I don't waste any emotion on disliking java, C#, or even Haskell or Smalltalk.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    24. Re:Java never really mattered, Taco? Ouch by jlarocco · · Score: 4, Insightful

      My biggest complaint with Java web development is that most of the libraries, toolkits and frameworks are massively over-engineered, and that causes many Java projects to be massively over-engineered. Google probably needs the flexibility, extensibility and scalability the libraries provide. Not so much for the internal web apps that Java gets used on so often.

      I can't count the number of times I've seen Java web apps running on massive servers providing functionality that could easily be provided by some Perl scripts running on a machine a fraction of the size.

    25. Re:Java never really mattered, Taco? Ouch by idontgno · · Score: 2, Insightful

      Language /geeks defend their pet languages with a fervor and violence usually reserved by wild animal mamas for the defense of their young. There's plenty of flamage to go 'round, so expect to catch some if you say anything that can be construed (even by the most twisted and hallucinogenic reading) to support one faction or the other.

      It's fun, really, and proves that true fans (as in, fanatics) haven't changed in more than a millennium and a half.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    26. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      distributed...

    27. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 1

      hmmm, I hate to say it but you're right. Additionally nothing can tell me what it is written in. So it may still be Java but it is defiantly not the GWT.

    28. Re:Java never really mattered, Taco? Ouch by Foofoobar · · Score: 1

      Yeah have to agree. That was pretty lame there Rob. I'm a LAMP dev but even I acknowledge that Java is a very useful and powerful language. It's what I lean on when I look to what a real language should aspire to at times; very clean, very organized and well documented. And amazingly easy to pick up and start developing in for first timers.

      --
      This is my sig. There are many like it but this one is mine.
    29. Re:Java never really mattered, Taco? Ouch by DimGeo · · Score: 3, Interesting

      I will say the J-word once again. May the Emperor forgive me.

      Try writing this: http://dimiter.dyndns.org/sqema/index.jsp in anything *but* Java, and make it faster. Then we'll talk again.

    30. Re:Java never really mattered, Taco? Ouch by dreamchaser · · Score: 1

      Yeah, I almost choked when I saw that. Even coming from Taco it was amazing. There are SO many enterprise applications using Java that none of us would be able to count them all. Is it the be all and end all of languages? Hardly. Is it important? Far more than Slashdot, that's for sure. The only business that would go under if Slashdot stopped working would be Slashdot. If Java magically vanished, a whole lot of companies would be in a world of hurt.

      Methinks Taco's head has finally swollen to a size where he won't be able to crawl out of the basement even if he were to want to.

    31. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      You're an assembler programmer? You mean by profession you spend your days coding in assembler or do you mean, like most of us here, that you can hand-optimize some code in assembler if you have to but for the most part you code in whatever language the client requires?

      Because if you code day-in-day-out in assembler, entire projects that would probably damn well benefit from use of a HLL. Well..

    32. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 1

      Plus, Java sucks. not true

      GUI is slow FACT: the GUI is not slow it is fast as any other programs GUI and less buggy because it is easier to create one!

      and the only way to get the code to run reasonably fast is to compile it, which kind of misses the point. what JVM do you use as suns server and client JVMs run quite fast and optimise allot whilst running.

      It puts an added burden on all the users, and can be a headache to anyone in charge of wide scale deployment in an organization. WTF! how?

      It's a blight, and we would be better off with out it. Everything done in Java would have been done in another language.

      and vice versa
      --
      null
    33. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 0, Redundant

      What does Java do that couldn't have been done better by another language that existed 11 years ago? Nothing. There fore it doesn't really matter.

      what can C++ or C do that can't be done in Java?
      --
      null
    34. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 1

      But it's not RUN in Java. It's run in a horrendous mix of JavaScript and HTML
      It sounds like you are thinking about applets. That is a LONG dead technology. The way Java is used today is by having the server generate the HTML and send it to the client. JSPs make this easy. The client browser has no idea it is doing anything that is Java related, it just sees a normal web page.
    35. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 1

      My biggest complaint with Java web development is that most of the libraries, toolkits and frameworks are massively over-engineered, and that causes many Java projects to be massively over-engineered. Google probably needs the flexibility, extensibility and scalability the libraries provide. Not so much for the internal web apps that Java gets used on so often.

      I can't count the number of times I've seen Java web apps running on massive servers providing functionality that could easily be provided by some Perl scripts running on a machine a fraction of the size.

      where do you get your information? no really where?
      --
      null
    36. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      Look up what GWT is. It's essentially a fancy HTML scripting language that just happens to look something like Java code.

      It's compiled into HTML and JavaScript, and NOT Java binaries. This is then stored on the server as static files, and it gets sent as static resources, allowing the browser's built-in caching mechanism to be used.

      The server interface can then be written in any language: it doesn't have to be Java. And, in Google's case, frequently isn't. A lot of Google code is written in Python. It's not a big secret. In fact, I can't think of any Google product that uses Java for its backend, Java is just plain-old too slow for Google.

      GWT is NOT an example of the full Java platform is use, just an example of one thing Google can do with the Java language.

      Somewhat interesting, but no more interesting than Quake III Arena compiling ANSI C to a virtual machine to allow cross-platform mods. It's a neat use of the language, but it shows nothing about the language in general usage.

    37. Re:Java never really mattered, Taco? Ouch by ckaminski · · Score: 1

      Only time I've ever seen Slashdot feel the /. effect was 9/11. Mostly that's because slashdot is a nearly 100% text site, and isn't crushed trying to ship megabytes of gif's jpg's and flash objects to 100,000 visitors.

    38. Re:Java never really mattered, Taco? Ouch by mollymoo · · Score: 4, Funny

      Plus, Java sucks.
      GUI is slow, and the only way to get the code to run reasonably fast is to compile it, which kind of misses the point.

      1999 called, they want their trolls back.

      --
      Chernobyl 'not a wildlife haven' - BBC News
    39. Re:Java never really mattered, Taco? Ouch by NoOneInParticular · · Score: 1

      Interesting that you manage to put in a push for Python in the same post that complains that Java is too slow. On its own, python is a complete pig, you need to move significant portions of the code to C to even remotely reach the speed of Java. Java is decently fast, and I'm pretty sure Google uses it for various things that (a) are not time-critical, and (b) need to run fast.

    40. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      And more important is that C# (C-hash as I call it)
      "Coctothorpe"
    41. Re:Java never really mattered, Taco? Ouch by csnydermvpsoft · · Score: 2, Interesting

      That's due to the culture surrounding the language rather than the language itself. I had an internship at a large Java-using company (not Sun) where we wrote navigation software for use in in-car computing. One of the pieces we needed was a server to provide the data (street segments, basically). We first used a package built by another team in the company that was huge (dozens of MB of Java code) and incredibly slow. We re-wrote it in about a week and it was orders of magnitude faster and smaller, with more features.

      When looking for a web framework for my company, I ended up writing a framework from scratch rather than using anything else out there. Even the best software, such as the Apache projects, suffers from lots of bloat. This isn't the fault of the language - it's the mindset that many people are in.

      It can be argued that the standard Java libraries are too large. That's a valid point, though the vast array of functionality provided sure does come in handy. In addition, it means that you likely will have to ship less libraries with your software - the user's JVM will have them all included.

    42. Re:Java never really mattered, Taco? Ouch by csnydermvpsoft · · Score: 2, Funny

      The only business that would go under if Slashdot stopped working would be Slashdot.

      Actually, I bet that a lot of job-search sites would go bottoms-up if Slashdot stopped working - companies would find their employees were suddenly more productive, meaning that they had to do less hiring; and people would stop being fired for surfing Slashdot at work.

      Come to think of it, Slashdot could be propping up the entire global economy right now. Maybe I should consider finally becoming a subscriber.

    43. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 1

      In my last post I was not talking about GWT I was talking about JSPs. They do work as I described and have NOTHING to do with Swing or any other Java GUI. I should know I write them all day long.

      You do seem to be correct about the GWT, that's disappointing. I was hoping that it would be an easy way to write Ajax based pages with out needing to dig to deep in to javaScript and all it's cross browser issues. But I guess not.

    44. Re:Java never really mattered, Taco? Ouch by Shados · · Score: 1

      Most of the big web work at Google is in Java and Python, as far as I understand, but I don't beleive its GWT either (though thats used a lot for internal web applications, for sure). No reference, just talk with people who worked there, so take it with a grain of salt.

    45. Re:Java never really mattered, Taco? Ouch by Dante · · Score: 1

      No Multiple Inheritance. Slower than a 486. Lame.

      Hehe!
      Still faster then Ruby!
      --
      "think of it as evolution in action"
    46. Re:Java never really mattered, Taco? Ouch by Nikker · · Score: 4, Interesting

      I know that you're a troll but as a counter point one thing that Java does really well is cross architecture. When you compile ASM,C,C++ etc you normally compile for the lowest common denominator i386 possibly Pentium MMX(2). With Java what ever platform it runs on is how the code is optimized, on the fly. So if I write a program it will take advantage of SSE/2 or Sparc or whatever since the JVM will handle everything for me. You "can" do that with C, C++, ASM(to a lesser degree) but what you end up doing is writing it for all the different platforms but compiling all of them into one executable which any one can tell you is nasty as it gets. If I compile a C program to take advantage of the latest and greatest processor it will only run on those machines that host it, a Java program will run on any and all that there is a JVM for.

      --
      A loop, by its nature, continues. If that didn't make sense, start reading this sentence again.
    47. Re:Java never really mattered, Taco? Ouch by prockcore · · Score: 1

      I think the movie was closer to a ripoff of Pink Floyd's The Wall than it was to the book.

    48. Re:Java never really mattered, Taco? Ouch by Z34107 · · Score: 4, Insightful

      I'm sure it can be done - I have limited experience with the language - but I'd imagine device drivers would be a pain to program in Java. Somehow, I just can't see nVidia using it to program their 280 series.

      Manual memory management would be another thing. Unless there's a nifty library out there that I missed (and there very well could be!), Java lacks anything that makes it suitable for kernel development, process scheduling, and the like.

      Game programming I'd think would be doable, if they have good DirectX libraries and an SDK that works well.

      But... other than really bare-to-the-metal stuff? Java should be able to do practically everything. Not that it would be my first choice for a lot of things, mind you.

      --
      DATABASE WOW WOW
    49. Re:Java never really mattered, Taco? Ouch by deragon · · Score: 2, Funny

      I have seen the Apple ad... Is it enough? ;)

      --
      Remember the year 2000? They promised us flying cars. They delivered the PT Cruiser...
    50. Re:Java never really mattered, Taco? Ouch by pdbaby · · Score: 1

      I completely agree with you in this respect. I love Java, but the only parts I really use are java.util for the Collections, java.util.concurrent, (java.net and java.io primitives obviously) and java.lang.reflect - Java's a great language with a fantastic JIT. I don't care for the extended libraries Sun ships with it.

      Speaking to your standard library point, I don't really see why it IS so large - it's largely implemented in pure Java so why not just let people choose: put most of the standard library out into separate projects and compete directly against apache's libraries (which, I suspect, would have made the Sun developers a lot better at writing simple easily understood apis).

      I also find Sun's attitude towards backwards compatibility annoying - I want them to trip out the crap that people shouldn't be using anymore (if necessary, keep it in the distribution but only allow it for code compiled against the earlier libraries - although if you're running jdk1.2 code and nobody wants to remove the use of classes which shouldn't be used then you've probably got bigger problems - or are still running a 1.2 jvm)

      Rant over. Sleepy now :P
      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    51. Re:Java never really mattered, Taco? Ouch by fm6 · · Score: 1

      Multiple inheritance was left out for the same reason you can't overload +: it creates more problems than it solves. Or at least that's the Java philosophy.

      And I'm not even going to go near that tired old "Java is too slow" crap again.

    52. Re:Java never really mattered, Taco? Ouch by Pengo · · Score: 1

      Yeah,

      I find this comment from Rob incredibly ignorant. In my career Java played a -HUGE- role in enabling Linux in the enterprise. It's cemented itself as a first class citizen for server programing.

      I'm sure back in the day Perl was a great way to write code, but I look at legacy perl code now and just cringe.

      Having written Java code for 10-some years, and probably made me close to 1+ million dollars in salary income alone (not counting rev-share, one of our companies sold, etc.) over the years, I have VERY LITTLE to complain about when it comes to Java. As a matter of fact, it's provided an amazing life for not only me, but my small family.

      When Rob spouts bullshit like "Since Java itself never mattered except to sell books, I still don't see why opening it matters.", it reminds me of why I would never hire a language zealot at my company. Maybe if my company was purchased by a failed .COM and put onto life support, I'd be a little more sympathetic with a retarded language like Perl.

      In the 10-some years I've been participating on Slashdot, I don't think anything quote so idiotic has ever come out of Rob's mouth.

      Maybe he's needing to refill his anti-depressants.

    53. Re:Java never really mattered, Taco? Ouch by jlarocco · · Score: 1

      where do you get your information? no really where?

      Several real, actual projects I've personally worked on. I know anecdotal evidence doesn't prove everybody over-engineers their Java apps, but in my experience most people do.

    54. Re:Java never really mattered, Taco? Ouch by The+Snowman · · Score: 1

      Then please tell us: what are the qualifications for a language that matters, if not usage?

      I don't know about the GP, but my company earns many millions of dollars a year in revenue due to applications written in Java. That pays for my mortgage, so Java matters to me and my paycheck. Oh, and this is from J2SE applications, not web services. That makes it double plus good!

      --
      24 beers in a case, 24 hours in a day. Coincidence? I think not!
    55. Re:Java never really mattered, Taco? Ouch by Gazzonyx · · Score: 1

      obDisclaimer: by temperment, I'm an assembler programmer, so I consider all y'all wimps. I don't waste any emotion on disliking java, C#, or even Haskell or Smalltalk.

      SPARC or x86? I took SPARC ASM a couple of semesters ago... it's... scary. Not to mention intimidating on a 12 core box (cache coherency?!). There's one book for college level SPARC ASM, and it's aged, slim, and mediocre. OTOH, I've got 3 out of 4 of Intel's developer books for x86 ASM, and they've got more op codes and pseudo ops than SPARC by what seems to be a factor of 5. Props to anyone that writes ASM, and mad props if it's on SPARC.

      --

      If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.

    56. Re:Java never really mattered, Taco? Ouch by tieTYT · · Score: 1

      I totally agree with you. But Stripes (a java web framework) is really simple and easy to work with. If you read it's getting started article (3 pages) you'll already understand 60% of how the framework works. It's the best web framework I've worked with.

      http://www.stripesframework.org/

    57. Re:Java never really mattered, Taco? Ouch by PinkyDead · · Score: 1

      Sorry but that's just a bit daft - and suggests that you need to go back to school on this.

      You suggest that Perl works at a smaller level. Not so.

      The equivalent of Perl on Apache in Java is achieved using a J2EE Webserver, such as Tomcat - which is as easy or easier to set up than Apache with mod_perl, and comparable in size - and pages are served using servlets, which are as simple to a Java programmer as Perl is to a Perl programmer.

      Now, arguments could be made about the performance or effectiveness of either solution. But in terms of complexity both are pretty much equivalent.

      What you are talking about is Web frameworks, but these are extensions of the basic model designed to provide (in general) MVC support. There's nothing stopping you having those in Perl - and there's no requirement to have them in Java.

      --
      Genesis 1:32 And God typed :wq!
    58. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      It is written in Java but compiled to JavaScript.

    59. Re:Java never really mattered, Taco? Ouch by SenseiLeNoir · · Score: 1

      I have developed a JAVA based server application (running in tomcat) that dynamically stitches MP3 files together on request. Lets just say, that in operation, it is as fast as the equivalent in C++, with the advantage of quicker fixes/development and is easier to make it scale on multi processor systems.

      Sure when you "first" run it, it runs at about 25% to 30% of any equivelent C program, but after serving about 2 to 3 complete files, the JIT compiler starts kicking in, and speeds increase to within 70 to 80% of the C code. and within about 10 requests and further optimisation by the JIT, it comes to 95% to 110% of the speed of the C code. Yes it actually runs faster at times.

      --
      Have a nice day!
    60. Re:Java never really mattered, Taco? Ouch by SenseiLeNoir · · Score: 1

      That is very true. In addition to the earlier post above (http://tech.slashdot.org/comments.pl?sid=596309&cid=23964553) the on demand MP3 stitcher that I developed was developed entirely on a PC (running windows), but deployed on a Sun Sparc, with NO need to adapt the code or recompile whatsoever. Considering the complexity of the program (dynamically stitching MP3 files, scanning individual frames, validating, etc) and that it processes on average 30 files a minute (at around 1 - 2 second per file), it was just a joy to be able to deploy the same WAR file on the following architecture running tomcat 5.5 without any changes.

      - Sun Blade T6320 (8 way SPARC0) running Solaris
      - Sun Netra X4200 M2 Server (x86 Opteron) running Solaris
      - Generic PC development server running Linux
      - Development PCs running Windows XP

      --
      Have a nice day!
    61. Re:Java never really mattered, Taco? Ouch by m50d · · Score: 1
      It WAS slow. Every version of Java has had significant GUI improvements. (http://en.wikipedia.org/wiki/Java_version_history)

      Every version of Java has been less slow than the previous one. However, even today, Java GUI remains slow compared to any major C or C++ gui toolkit, even if said toolkit is being called from a much higher level language. Yes, there is SWT, which brings Java up to parity with other languages, but using that rather negates the whole "write once, run anywhere" thing.

      --
      I am trolling
    62. Re:Java never really mattered, Taco? Ouch by m50d · · Score: 1
      And more important is that C# (C-hash as I call it) is created by Microsoft because they weren't allowed by Sun to create a diverged version of Java.

      Be more of a hacker and less of a politician. Regardless of its origins, C# is a much better language than Java; yes, it "steals" a lot from Java, but that's the way to make a better language - take the good parts of Java, and change the bad ones.

      But some of us may still remember that there were applets around written for Microsoft's JVM and that they did only work in IE - while at the same time other applets didn't work in M$:s JVM.

      That's true of all the free Javas there have been thus far. In fact, I'd say it's probably true of any two implementations of a common standard.

      --
      I am trolling
    63. Re:Java never really mattered, Taco? Ouch by julesh · · Score: 1

      . Unless there's a nifty library out there that I missed (and there very well could be!), Java lacks anything that makes it suitable for kernel development, process scheduling, and the like.

      There are extensions to Java for this kind of thing. See (e.g.) the JX operating system.

    64. Re:Java never really mattered, Taco? Ouch by redscare2k4 · · Score: 1

      We all know that Perl is far superior from Java (or at least they guys who use it think so ;)
      Programming Languages Hierarchy
      J/K

    65. Re:Java never really mattered, Taco? Ouch by Giant+Electronic+Bra · · Score: 1

      Yeah, Taco is getting a bit rambunctious there, lol. ;)

      After writing maybe a million LOC in both perl and java, all you can say is they each have certain things going for them. Scripting languages are not going to kill off Java any time soon, if ever. Apples and Oranges.

      As for OS Java, big yawn. I mean more OSS is always a good thing, but at least in the sort of business I'm in OS Java is no biggie. What we desire is stability and performance. JRockit aside, that has never even been close to existing in any implementation outside of Sun's. In fact the performance difference is usually an order of magnitude, sometimes more. Given that the JDK/JRE have always been no cost software from the beginning I just don't see this whole thing changing my life one bit.

      At most I think it is possible some of the standard class library, collections obviously coming to mind, MIGHT benefit a bit from wider scrutiny. At this point though they've probably achieved close to their realistic performance limits given the need for compatibility etc. If you need something faster, there are always 3rd party libraries anyway that are more optimized for specific use cases.

      --
      "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    66. Re:Java never really mattered, Taco? Ouch by tehcyder · · Score: 1

      Slower than a 486? On a frist generation Pentium perhaps.

      But then, that's about the right era for comments about Java being slow, too.

      I think that was the point of the joke.

      --
      To have a right to do a thing is not at all the same as to be right in doing it
    67. Re:Java never really mattered, Taco? Ouch by GogglesPisano · · Score: 1

      Are you talking about Java or C#?

    68. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      Yeah, that was a really lame comment. Does Rob think the programming world consists of Perl hackers like him? Thousands of programmers make a living writing Java code.

      Ah, so the point of Java is that, by requiring five times as many programmers to accomplish the same task a single programmer can do with your average scripting language, it is helping to keep the economy afloat. Good point.

    69. Re:Java never really mattered, Taco? Ouch by jcr · · Score: 1

      Did Slashdot ever make any of the grandiose claims that java's pushers did?

      Basically, it was game over for Java as soon as it became necessary to ask "which Java?" They never delivered on the "write once, run anywhere" hype.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    70. Re:Java never really mattered, Taco? Ouch by James+Carnley · · Score: 3, Interesting

      Game programming I'd think would be doable, if they have good DirectX libraries and an SDK that works well.

      Java has some pretty good libraries for game development.

      • A fully featured OpenGL API: JOGL
      • OpenAL for audio: JOAL
      • JInput for game controllers and other input: JInput
      • Java version of SDL for a complete game dev tool: SDLJava

      Also, check out the pure Java implementation of the Quake 2 engine. Runs on every major platform with near native speed. Jake2

      I doubt that Java will ever be used for mainstream games, but for small projects it is a great tool that will allow a game to run on any platform with AAA title graphics and sound.

    71. Re:Java never really mattered, Taco? Ouch by fm6 · · Score: 1

      Given that the JDK/JRE have always been no cost software from the beginning I just don't see this whole thing changing my life one bit.

      It may be no cost to download but you can't redistribute it. That's not a big deal if your code only has to run on Windows, for which Sun maintains a free download/update service. But if you're targeting Linux, you really want Linux distros to bundle Sun's JRE. Until that JRE has a compliant open-source license, that's not going to happen.

      And remember, OSS is not just about cost. If you have any improvements that you want to see in the Java platform, you'll probably seem them faster when the Java reference implementation ceases to be bound by Sun's (increasingly limited) resources.

    72. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      I stopped reading slashdot long time ago as soon as I realized the partiality and inaccuracy of most comments not to mention the anti-Corporate/Microsoft attitude that makes any non-open source software deprecated and worse than the open source alternative. This parallel world ruled by geeks is really outside reality. Today I made a visit and i had to leave my first and last comment.

      I don't like Java that much and i love open source but truth said Java It's still the most popular language in the world ( http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html ) including in mobile devices. So, slashdot founder consider it doesn't really matter...

      No comment.

    73. Re:Java never really mattered, Taco? Ouch by nessus42 · · Score: 1

      It sounds like you are thinking about applets. That is a LONG dead technology.

      No it isn't. The "Processing" IDE/API breathes new life into applets. Here's a Java applet I wrote and it is quite nifty keen:

      http://am.iic.harvard.edu/DendroStar

      |>oug

    74. Re:Java never really mattered, Taco? Ouch by nessus42 · · Score: 1

      A lot of Google code is written in Python. It's not a big secret. In fact, I can't think of any Google product that uses Java for its backend, Java is just plain-old too slow for Google.

      This is just nonsense. I'm a huge Python fan, but for most purposes Java is much faster, and on the server, Java is typically the fastest language around, since the JIT compiler is constantly optimizing the hell out of the "hotspots".

      |>oug

    75. Re:Java never really mattered, Taco? Ouch by nessus42 · · Score: 1

      I was hoping that it would be an easy way to write Ajax based pages with out needing to dig to deep in to javaScript and all it's cross browser issues. But I guess not.

      I'm confused by your comment about GWT. The goal of GWT is precisely so that you can make Ajax-based sites without every writing a single line of Javascript or worry about cross-browser issues. You just write all your code in Java using their widget set, and their compiler does all the rest for you automatically.

      Of course, this only works for browsers that GWT supports.

      |>oug

    76. Re:Java never really mattered, Taco? Ouch by Giant+Electronic+Bra · · Score: 1

      Eh. OK, you have to actually download the JRE. Assuming you're not running any of a number of distros that package commercial binaries, like Mandriva. Honestly, I don't find it to be a big deal. Sure it WILL be slightly more convenient now, and that's cool, but I hardly think the license has been holding back java apps much, or at all tttt.

      Pretty much the same thing in terms of improvements. 99.999% of improvements are extensions to existing APIs, SPI implementations, or variations on existing APIs. None of that was seriously encumbered. Significant parts of the standard java libs source has been available for a good long time anyway, or at the very least spec compliant alternative implementations.

      As for the core JVM, that is the one place there is a real win. However, though you may consider the Sun 'reference implementation' of the JVM to be in some fashion less perfected than it might be, it is actually far and away one of the most sophisticated and performant VM implementations of ANY sort already. Few and far between are those who have much business mucking around in there, and fewer and further between are those who will be able to do much to improve it.

      I just don't see the whole release as earth shaking. Yeah, it is nice that it is going open source, but its closed sourcedness was basically zero deterrent to to most of us using it already.

      --
      "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    77. Re:Java never really mattered, Taco? Ouch by AmaDaden · · Score: 1

      I originally thought it was more like JSPs. You write the page in HTML like language and Java fills in the gaps at run time. If it was i could quickly alter any page to use it. Instead it's more like it compiles a Java GUI in to HTML and javaScript. While this is clearly very powerful and cool i have no practical use for it since my AJAX is just text switching. This is overkill and more trouble then it's worth. I was just hoping it was a quick way around writing the transport level AJAX code, but it's long complex way around writing the functional level AJAX code. It is nifty and cool but i just have no use for it.

    78. Re:Java never really mattered, Taco? Ouch by jlarocco · · Score: 1

      Sorry but that's just a bit daft - and suggests that you need to go back to school on this.

      Maybe you should spend a little less time in school and little more time in real life. Very few people use plain old servlets running in a plain old J2EE container. They use JBoss and Struts and Hibernate and jBPM and Seam and Rules and Spring and on and on and on, all tied together with an endless maze of XML configuration files. It's not uncommon for Java web apps to require 20+ MB of addtional libraries and jar files on top of the regular old J2EE container.

      I've seen sites that get fewer than 500 hits a day using all of that crap. Internal sites where, if the company grew at 100x its current rate, it might get 10000 hits a day sometime ten years from now. Sites that could have been replaced by a couple hundred lines of Perl using nothing but the DBI and CGI modules along with mod_perl.

      Like I said, it's great if you're developing for Google or Amazon or some other incredibly popular site that needs the flexibility and scalability, but it's overkill in 99.9% of the places where it gets used.

    79. Re:Java never really mattered, Taco? Ouch by PinkyDead · · Score: 1

      I've seen sites that get fewer than 500 hits a day using all of that crap.

      So you're saying that because developers use the wrong tools for the job, by applying freely available open-source frameworks, that's Java's fault. Don't they have bad developers in Perl?

      Very few people use plain old servlets running in a plain old J2EE container.

      So? Doesn't change the fact that you can use it if you want - and that your Perl/DBI/CGI can be just as easily implemented with Servlets/Jdbc. I'm not arguing for one solution over the other - especially for the 500 hits a day site, but the architecture you described is just a Java strawman and if anyone you know has created such a system, then problem is not with the frameworks.

      --
      Genesis 1:32 And God typed :wq!
    80. Re:Java never really mattered, Taco? Ouch by jlarocco · · Score: 1

      I'm well aware that it's not Java's fault. As somebody else pointed out, it's the "culture" around Java that promotes over-engineering, not Java itself. Unfrotunately, in real life it's hard to do anything without running into that culture. What that means is that Java projects are more likely to suffer from the problem than other projects.

      There are over-engineered, bad projects in every language, but in my experience projects written in Java are almost always more complicated than they need to be. Much, much more often than projects written in other languages. As far as I'm concerned that makes it a Java problem for all practical purposes.

    81. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 1

      you forgot Java 3D

      --
      null
    82. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 1

      programmers over engineering java apps != java is bad
      programmer over engineering java app == programmer is bad!

      --
      null
    83. Re:Java never really mattered, Taco? Ouch by jlarocco · · Score: 1

      That's more or less been my point all along. Nowhere have I said "The java language == bad". The problem is, I've found that most Java programmers like to greatly over complicate things.

      Unfortunately, writing code in isolation just isn't practical. I can't go in to work on Monday and say "Fuck all you guys, I'm writing this app by myself." So when the majority of Java programmers like to write bad, over complicated code it makes writing Java apps in general less desirable.

    84. Re:Java never really mattered, Taco? Ouch by Anonymous Coward · · Score: 0

      The only thing that makes Java GUI slow is weak developers. Ok, maybe when you need some really sophisticated graphics some platform optimized language would be a better choice, but for most uses it's more than enough.

    85. Re:Java never really mattered, Taco? Ouch by Darrenor64 · · Score: 1
      Exactly: Anything can be done -- the question is whether or not it's a good idea to do it.

      Program language wars are a waste of time, often peppered with ignorant absolutist statements.

      It's about using the right tool for the right job.

      Java is about defined architecture, type safety, and running on multiple platforms etc. If you understand how to use these features and have a NEED to use them, then Java can be a powerful tool for you.

      If you want to write device drivers or kernel stuff, then work in C/Assembly and write some good libraries. If you feel the need, you can load and link to them with Java.

    86. Re:Java never really mattered, Taco? Ouch by Darrenor64 · · Score: 1
      Certainly Java isn't perfect, but perhaps it may be preferable to use over MS C# if it is open.
      (Assuming that MS is never open)

      This could be another sense for why an Open Java might matter.

    87. Re:Java never really mattered, Taco? Ouch by James+Carnley · · Score: 1

      I was under the impression that Java 3D was a dead project and would be replaced.

      Did they resurrect the project?

    88. Re:Java never really mattered, Taco? Ouch by HJED · · Score: 1

      Java 3D is very much alive as it's realising nightly build.

      --
      null
    89. Re:Java never really mattered, Taco? Ouch by m50d · · Score: 1

      Certainly Java isn't perfect, but perhaps it may be preferable to use over MS C# if it is open.

        (Assuming that MS is never open)

      Yes, but you're forgetting we already have a perfectly good open C# - Mono. I really don't think it makes sense to start a new project in Java at this stage, because C# had the benefit of several years of experience with Java in designing it, and so fixes so many of Java's annoying flaws.

      --
      I am trolling
    90. Re:Java never really mattered, Taco? Ouch by Darrenor64 · · Score: 1

      Yes, but you're forgetting we already have a perfectly good open C# - Mono. I really don't think it makes sense to start a new project in Java at this stage, because C# had the benefit of several years of experience with Java in designing it, and so fixes so many of Java's annoying flaws.

      Interesting point. I should check that out some time.

    91. Re:Java never really mattered, Taco? Ouch by chris_mahan · · Score: 1

      Excellent little dot diag.

      --

      "Piter, too, is dead."

  2. (Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0

    I just don't understand why most of /. loves java and sun so much. I really really dont like it. Everything I have ever used that ran in java was horridly cludgey and just plain annoying to use. Insight please? Just what is so great about it?

    1. Re:(Troll) I hate java, why does /. love it? by east+coast · · Score: 3, Insightful

      Maybe you're an older coder but I think that Java gets some of the nostalgia effect that BASIC use to since it seems to be the first programming course offered. At least from what I've seen it's one of the early languages taught now-a-days. But I really don't know for sure.

      It certainly seems to be a fairly easy introduction to OOP.

      --
      Dedicated Cthulhu Cultist since 4523 BC.
    2. Re:(Troll) I hate java, why does /. love it? by 3p1ph4ny · · Score: 5, Interesting

      A "cludgey" app can be written in every language, Java is no exception.

      Without getting in to a bunch of holy war things, here are some of the things that Slashdotters may like about Java:

      1. You can get paid to write in it. A lot of us (myself included) are software developers who write stuff in primarily in Java. Sure, I know other languages like Ruby, but it's nowhere near as ubiquitous as Java. This makes employers like Java.

      2. It's mature. It's been around for a long time, and the libraries are mostly stable and bug free. This is not true for some other languages. Also, the APIs for Java are huge and support everything, and the documentation is good.

      3. It's fast(er). Older Java GUI stuff was not fast, and it gave people the impression that all of Java is not fast. Well, Java 1.6 is fast.

      4. It's cross platform. This isn't a big deal for me so much, but it might be for some people.

    3. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0

      Most Java software runs on servers, where the kudgy annoying stuff is a sysadmin problem. Java is very critical to Linux's success in the server market.

      I think most of /. would agree with you about java applets or desktop apps.

    4. Re:(Troll) I hate java, why does /. love it? by Cyberax · · Score: 2, Insightful

      Javascript has a better object model?

      You mean, a language without a basic stuff like namespaces (!!) has a better object model than Java?

      Oh, and Java also has static typing. That's a great feature.

    5. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 2, Interesting

      It's fast(er). Older Java GUI stuff was not fast, and it gave people the impression that all of Java is not fast. Well, Java 1.6 is fast.

      That is the first time I've seen that admitted on /.! It's become so fashionable for everyone to claim that Java is slow while espousing the virtues of whatever else will give them the most geek cred.
    6. Re:(Troll) I hate java, why does /. love it? by chris_mahan · · Score: 1

      The only java app I like is jEdit. But even its author, Slava Pestov, got very frustrated with java. He's developing on factor, another language.

      --

      "Piter, too, is dead."

    7. Re:(Troll) I hate java, why does /. love it? by benjfowler · · Score: 1

      And just about every non-offical GTK+/Gnome application I've ever used. You can build crap in any language. The difference with Java is that the barrier is somewhat lower than with C/GTK+. Try downloading some earlier releases of GRIP and then watch your eyeballs bleed.

      You can take this further and then look at all the pre-pubescent, putrefacting garbage out there written in PHP. The lower the technical barriers to entry, the more poorly-designed, awkward garbage gets written on it.

      The truth is, most people know squat about writing reliable programs with decent, half usable UIs. Java/Swing and C/GTK+ have at least one thing in common: it's relatively easy for weekend hobby coders to push out crap, but it takes a lot more clue and skill to build stuff that's good looking and usable.

    8. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0

      Care to explain how "Javascript has a better object model than Java". Are we talking about the same Javascript?

    9. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0


      Can you give us one example of how Javascript has a better object model than Java? Just curious.

    10. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 2, Insightful

      Javascript's object model is simpler, more flexible, and more consistant than Java's object model. Whether it's better depends on your point of view, but it has some advantages.

      Static typing is nice when done properly, but Java doesn't do it properly. It manages to be both inflexible and restrictive, and prevents only relatively uncommon errors. I can't think of a single statically-typed language that has a worse type system than Java.

    11. Re:(Troll) I hate java, why does /. love it? by DuckDodgers · · Score: 3, Interesting

      A lot of the biggest kluges in early Java have fallen out of favor:

      1. Struts 1.x is huge, but it isn't being used as much on new projects. Newer frameworks like Tapestry, Wicket, Struts 2/Webwork, and Spring are far easier to setup and use, more flexible, or both.
      2. EJB2 was an overengineered mess. EJB3 is viewed as far superior, and many major sites aren't bothering with EJB at all.
      3. A lot of Java tools like Hibernate have moved from checked exceptions (which must be caught or declared to be thrown in the method signature) to runtime exceptions (which do not need to be caught).

      The language definitely has warts. But the common open source (and for that matter, commercial) tools are learning lessons in ease of setup and configuration from Ruby, Python, Perl, Ruby on Rails, Zope, and so forth. (I used web applications as the example domain because that's what I know a little about. I understand similar enhancements are happening elsewhere.)

      On the other hand, the language standard library is big enough and has enough corner cases that the learning curve is enormous.

    12. Re:(Troll) I hate java, why does /. love it? by argent · · Score: 1

      I think arevos has pretty much covered my reasons for preferring Javascript's object model. Complexity is a huge huge huge red flag for me. I also dislike bondage-and-discipline type structures, and prefer dynamic typing, but that's a whole other can of toxic waste I don't want to open.

    13. Re:(Troll) I hate java, why does /. love it? by fm6 · · Score: 2, Insightful

      Everything I have ever used that ran in java was horridly cludgey and just plain annoying to use. Insight please?


      Technical point: if you really want insight, you're not a troll.

      Hard to give you an insight, since you're obviously not a programmer: your criticism of Java is based on bad experience using Java programs, not creating them. It would be like explaining the fine points of carpentry to somebody who's never picked up a saw or hammer.

      That said, most GUI Java programs are pretty awful, and those are the programs somebody like you is going to base your judgment on. It's a lot harder than it should be to write a good GUI application in Java. Too many fundamental mistakes in the GUI libraries early on, and too many weird kludges created to fix them and still maintain backward compatibility.

      But Java works much better on in other kinds of applications, and you've probably used such without realizing it. If you own a Blu Ray player, than you've used Java software. It's embedded in a lot of other devices. It's also moderately successful as a sever-side application, especially on the web. Ever browsed a web page that ended in ".jsp"? The page was generated by Java software.

      So why is it "better"? It's not, really. No successful programming language is. They all have their strengths and weaknesses, and the argument really isn't between the languages, it's between the programmers who favor them. Java is popular with programmers who don't want to do their own memory management and who thank that deliberately restricting the idioms you can use makes for cleaner, more maintainable code. C++ is popular with exactly the opposite kind of programmer, who values both the ability to manage low-level details, and to use and create complex, often arcane idioms.

      Small example: in C++, you can define what operators like "+" mean with any kind of object; Java also has the power to define what you can do with an object, but deliberate omits the ability to express complex actions with simple operators.

    14. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      You can add, alter and remove methods from an object at runtime, including built-in objects like Array.

      Array.prototype.each = function(f) {
          for (var i = 0; i < this.length; i++)
              f(this[i]);
      }
    15. Re:(Troll) I hate java, why does /. love it? by Z00L00K · · Score: 4, Interesting
      Compared to a lot of other languages the typing in Java is far better. In JavaScript the variables aren't typed at all and you can run into all kind of errors. Python reiterates all the classic programming problems of Basic. C is in itself not very type-safe but you can get a few compiler warnings about type mismatches.

      So you better have to explain yourself what's really wrong with the type handling in Java. Maybe you program in some more obscure language?

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    16. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0

      Static typing sucks. It might catch the 0.1% of use cases where a programmer confuses the types of arguments and calls (or tries to call) code with the wrong argument types. That kind of error is typically picked up during testing anyway.

      Dynamic testing is far more flexible. I can write functions which accept objects of various types as function arguments without having to kludge up my class hierarchy to make them all inherit from some common parent class, or all provide some specific interface.

      Interfaces is a really great idea implemented in a really lame manner in the language. As I understand it, defining the interface means only specifying prototypes for the methods and arguments within the interface. No functional code. So you have to write the code for the interface yourself (in your class, or a parent class). And because Java doesn't have multiple inheritance, you can't just write the code relating to the interface only once - unless you can add it to some common parent class. And if you _do_ have a common parent class, you don't need to use the interface mechanism!

    17. Re:(Troll) I hate java, why does /. love it? by Gewalt · · Score: 1

      Technical point: if you really want insight, you're not a troll. Yes, this is true, but if I had asked the question in a different manner (ac+troll warning), I would have been modded down for troll anyways, and I actually did care.

      You are right, of course, that I am not a programmer. At least not quite. I have written more code than the average business employee, but I a actually work on the business side of systems implementations, and only resort to coding when a coder is making a mis-understanding in the implementations of the business logic that was decided upon. In that regard, I am very much platform/language agnostic.

      --
      Modding Trolls +1 inciteful since 1999
    18. Re:(Troll) I hate java, why does /. love it? by hedwards · · Score: 1

      I'll take java over javascript any day. Javascript just sucks, I haven't had a chance to play around with the newer implementations, but most of the interesting features were only implemented in 1 browser or were implemented in multiple browsers in different ways. And at that time, you couldn't even think about taking it outside of the browser. Far easier to put java into a browser than take javascript out.

      Sometimes things that were standard to most other languages would require an unwieldy hack to get working.

      That being said, I'd like to see both fixed up and polished up to be a bit less quirky at times. But it is kind of nice with Java that you can overload things if need be or just write your own thingy-mo-bobs where necessary.

      Admittedly a lot of that has changed, but still I'm not particularly inclined to trust javascript until there's been significant progress in terms of standards and standards compliance.

    19. Re:(Troll) I hate java, why does /. love it? by nuttycom · · Score: 5, Insightful

      If you find Java's static typing inflexible and restrictive, you're doing it wrong. The great advantage I find with the level of restriction that Java puts on your types is that it enables brilliant development tools. Refactoring support is paramount.

      Having recently completed a major refactoring of a Ruby project with tens of thousands of lines of code, I can say from experience that refactoring of an app written in a dynamic language can be a colossal pain in the ass. Just finding everywhere that a particular class is being used can take hours or days. With a decent refactoring IDE and a Java 5/6 (with everything generified) such an operation takes a couple of seconds at most.

    20. Re:(Troll) I hate java, why does /. love it? by Jezza · · Score: 4, Insightful

      Why do we the /. crown love Sun/Java?

      Many of us used Sun boxes at Uni (I did) then suffered IBM boxes (although SMIT was quite spiffy) in our jobs. Strangely we started to wish we had the old Sun boxes back. (Or is this just me?)

      Many of us moved from C (and C++) to Java, see above.

      We love Java because we know Java, it does everything, and if you've grown with it, then it's OK. Sure, coming to Java from cold today it seems really complex.

      Is Java perfect? LOL! No, not even close. But Java is fun to program in. Java programs aren't wedded to any particular OS/Hardware combination (I'd admit they don't quite live up to the "write once/run everywhere" promise, but it's close enough). Java has proved amazingly adaptable - and speed isn't really as much of an issue as the haters claim, if it was we'd all write assembler. Java isn't really far off the speed of C++. As for no multiple inheritance - do you REALLY want that?! There is a reason pretty much every phone has Java on it (don't tell anyone - but I quite like playing Tetris on my phone, thanks Java).

      As for Sun, well they do make some really nice boxes, and they are giving us some great stuff (DTrace anyone?)

    21. Re:(Troll) I hate java, why does /. love it? by Reverend528 · · Score: 4, Funny

      It certainly seems to be a fairly easy introduction to OOP.
      much like how tequila shots are a good introduction to drinking?
    22. Re:(Troll) I hate java, why does /. love it? by Dragonslicer · · Score: 1

      Which then destroys any code that relies on others not screwing around with core classes. In your example, for (var i in array) is broken.

    23. Re:(Troll) I hate java, why does /. love it? by Gilbrt · · Score: 1

      Modifiing the structure of your code is a bad thing that you learn at school very soon. Also if you do enable variable to be any type and let the structure of your code be modified at runtime in the client browser this a big hole to security for web 2.0 applications... To bad, it's already here...

    24. Re:(Troll) I hate java, why does /. love it? by mhall119 · · Score: 1

      Most of the perceived "slowness" of Java desktop apps was a combination of loading the contents of the JVM into memory, and GUI programmers putting long processes on the AWT update thread. Neither is necessarily the fault of Java, but it is somewhat responsible for making it hard to do things the right way.

      --
      http://www.mhall119.com
    25. Re:(Troll) I hate java, why does /. love it? by fm6 · · Score: 1

      ...if I had asked the question in a different manner (ac+troll warning), I would have been modded down for troll anyways, and I actually did care.

      Except if you deliberately post as AC, most people will just filter you out. I would have, except that the filtering in the new system seems to be broken.

      Also, you seemed to be posing as somebody technically less clueful than you actually are. Or maybe I just stereotyped you. Either way, I wrote a response that was a little more patronizing than it should have been.

    26. Re:(Troll) I hate java, why does /. love it? by AmaDaden · · Score: 1

      Would that be http://en.wikipedia.org/wiki/Closure_(computer_science)? Because they are thinking about putting it in Java 7 (http://en.wikipedia.org/wiki/Java_version_history) If you really want to do it now you can use reflection to make and load new classes on the fly, but it will be messy and a bit of work.

    27. Re:(Troll) I hate java, why does /. love it? by geekoid · · Score: 0, Flamebait

      1. If Java wasn't aropund, people would get paid for creating the same applications i a different language.

      2. No, it's not mature.

      3. Great it's faster then it used to be, but it's still not fast. Java 1.6 is not fast.

      4. So is C++, your point?

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    28. Re:(Troll) I hate java, why does /. love it? by argent · · Score: 1

      You wouldn't do this to Array, you'd do this to (for example) display widgets that you don't have the source to, so you can instrument or extend code in a library you don't have source to that uses the widgets you don't have source to...

    29. Re:(Troll) I hate java, why does /. love it? by Kz · · Score: 1

      all your points are much better applied to C++

      --
      -Kz-
    30. Re:(Troll) I hate java, why does /. love it? by geekoid · · Score: 0, Troll

      "ava isn't really far off the speed of C++"

      That is only true if you compile it, effectively loosing all the other benefits you claim.
      "(don't tell anyone - but I quite like playing Tetris on my phone, thanks Java)."
      so? I can play C# games on my phone, talk about logical fallacies, sheesh.

      You go right ahead and sit there thinking that without Java there wouldn't be any applications on your phone.

      Trouble shooting any large Java application is a nightmare.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    31. Re:(Troll) I hate java, why does /. love it? by argent · · Score: 1

      if you do enable variable to be any type and let the structure of your code be modified at runtime in the client browser this a big hole to security for web 2.0 applications

      Javascript needs the ability to control secondary interpreters, like Tcl does, so you can create explicit sandboxes at the script level like SafeTcl does.

    32. Re:(Troll) I hate java, why does /. love it? by speedtux · · Score: 1

      The debate over dynamic vs static typing has been going on for half a century, and there is no compelling evidence to support the position that static typing is better than dynamic typing. Furthermore, among static type systems, Java's is not particularly good.

    33. Re:(Troll) I hate java, why does /. love it? by argent · · Score: 1

      most of the interesting features were only implemented in 1 browser or were implemented in multiple browsers in different ways.

      Javascript's been unfairly tainted by the horrible class *libraries* thrown together for reasons both benign and malicious (or at least based on lock-in rather than portability) in browsers. The lack of a good standalone Javascript is a problem, but not a problem in the design of the language.

    34. Re:(Troll) I hate java, why does /. love it? by Gilbrt · · Score: 1

      Ok, this seems a cool feature. From what you are saying, this seems to be the java sandbox for javascript.

    35. Re:(Troll) I hate java, why does /. love it? by FishWithAHammer · · Score: 1

      You obviously don't understand what interfaces are for.

      Yes, defining the interface means only specifying method prototypes. That's the point. I can use (I'm a C# programmer, not a Java programmer, but the principle is the same) IDisposable, an interface to ensure cleanup of resources, regardless of what kind of object it is. Or I can use ICollection in order to guarantee that a wide variety of different data structures implement the same functions, though the underlying implementation obviously must differ.

      The entire intent of interfaces is to provide a contract that can be effectively implemented by disparate object types. Nothing else.

      If you need to write functions that must be able to interact with a set of classes that are similar, not inheriting them from a shared parent class in which the interface is implemented is stupid. If you need to write functions that must be able to interact with a set of classes that are not similar, then obviously the individual implementation of the programming interface for each class will have to be done anyway, so why are you complaining?

      Static typing has warts. This is not one of them and your categorization of them as such belies your ignorance.

      --
      "You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
    36. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      So you better have to explain yourself what's really wrong with the type handling in Java. Type systems can potentially prevent a very wide range of errors at compile time. For instance, how many times have you run into a NullPointerException in Java? Or ran into a race condition when dealing with threads? Or not properly sanitized user data? Data processing loops overrunning? All these things can potentially be caught at compile time by a sufficiently advanced type system, such as in a language like Haskell.

      Throughout my career, I've used a mix of dynamically and statically typed languages. In my current job, for instance, I've worked on programs in C#, and programs in Ruby. I get very few errors in Ruby that C#'s type system would have prevented, and those errors that occur are generally quickly apparent. It's pretty unusual to pass the wrong type of object to a function, but it is common (for instance) to have problems with nulls and nils.

      Java's type system is geared to address errors that are relatively rare, and easy to catch. In order to achieve this rather unimpressive feat, it sacrifices a whole bunch of functionality that dynamic languages possess. To my mind, it's not worth the trade-off. I'd rather Java restrict nulls, or mutability, or race conditions, or something that results in a lot more errors that passing the wrong type into a function or data structure. Java sacrifices 80% of its functionality in order to catch 1% of programmer errors.

    37. Re:(Troll) I hate java, why does /. love it? by Sancho · · Score: 1

      Really? I see it in almost every story on Java (which, admittedly, are fairly few and far between) and on many stories about other programming languages (when someone will inevitably make a Java comparison, sparking off a long thread on its pros and cons.)

      The threads almost always start with someone talking about how slow Java is, and then people will reply to explain that the newer versions of Java have really been tuned to be fast. That combined with JIT, they say, makes it nearly as fast as code compiled in C++.

      Is it true? Who knows. I've never bothered to go find out because I simply don't code that much anymore. But it does get repeated quite a bit.

    38. Re:(Troll) I hate java, why does /. love it? by Spy+der+Mann · · Score: 1

      4. So is C++, your point?

      You raise an interesting point. Cross platform compatibility is an area where the user has to research. However, with Java, no matter what the user does, the program will STILL be cross-platform, simply because it depends on a cross-platform runtime engine.

      However, with C++ you can make mistakes and link to a function that is not present on all platforms. You have to be much more careful with that. However, it's not C++ that is not cross-platform, but the application API's. Can we really complain about C++ portability problems when the main problem with portability is Microsoft Windows' undocumented functions and bad documentation?

    39. Re:(Troll) I hate java, why does /. love it? by Jezza · · Score: 1

      "ava isn't really far off the speed of C++"

      That is only true if you compile it, effectively loosing all the other benefits you claim.

      I don't think I claimed Java could actually live up to "write once run anywhere" - quite the reverse actually, I said it was close enough. Compiling it doesn't change that - it's still very portable. Might need compiling again. I don't understand the point your making.

      "(don't tell anyone - but I quite like playing Tetris on my phone, thanks Java)."
      so? I can play C# games on my phone, talk about logical fallacies, sheesh. Most phones run Java, in fact most everything runs Java - that's kind of the point. Would C# exist without Java? Seriously, would gaming on phones be the same without Java (I mean if Java had never existed)? I seriously doubt it, sure there would be games - but things would be quite different.

      You go right ahead and sit there thinking that without Java there wouldn't be any applications on your phone.

      Don't worry, I don't think that

      Trouble shooting any large Java application is a nightmare.

      Trouble shooting any large enough application is a nightmare. In my experience.

    40. Re:(Troll) I hate java, why does /. love it? by thePowerOfGrayskull · · Score: 1

      Static typing sucks. It might catch the 0.1% of use cases where a programmer confuses the types of arguments and calls (or tries to call) code with the wrong argument types. That kind of error is typically picked up during testing anyway. Sometimes it's picked up, if the tests are good. Personally, I like the fact that I don't have to test something to find obvious errors in it, which is static typing's biggest advantage.
    41. Re:(Troll) I hate java, why does /. love it? by JAlexoi · · Score: 1

      For 8 years of Java development these:
      "how many times have you run into a NullPointerException in Java? Or ran into a race condition when dealing with threads? Or not properly sanitized user data? Data processing loops overrunning?"

      Except for rare NullPointerExceptions, had little problems with any of those... if any at all.

    42. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      If you find Java's static typing inflexible and restrictive, you're doing it wrong. Have you ever worked with a language that has algebraic data types? I can't see how anyone who's worked with a sufficiently expressive type system could ever see Java as anything other than inflexible and restrictive. What statically-typed languages have you worked with?

      Having recently completed a major refactoring of a Ruby project with tens of thousands of lines of code, I can say from experience that refactoring of an app written in a dynamic language can be a colossal pain in the ass. Just finding everywhere that a particular class is being used can take hours or days. Then you're doing it wrong, or at least the original programmers were. Refactoring bad Ruby code is probably harder than refactoring bad Java code, but if your code is decent, I'd contend the opposite is true.

      In Ruby, you can construct methods that are more expressive, so the core architecture of your application should be relatively small. Everything else should be business logic and presentation, and separate as much as possible from the underlying architecture. If your application is "tens of thousands of lines of code", then presumably it's an application with dozens of separate chunks of functionality. Why not farm these out into self-contained gems? Then you wouldn't need to refactor the whole lot.

    43. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      for (var i in array) is fragile anyway, and there's nothing that mandates you to override a core class, rather than a wrapper.

    44. Re:(Troll) I hate java, why does /. love it? by HJED · · Score: 1

      Static typing sucks. It might catch the 0.1% of use cases where a programmer confuses the types of arguments and calls (or tries to call) code with the wrong argument types. That kind of error is typically picked up during testing anyway.

      Dynamic testing is far more flexible. I can write functions which accept objects of various types as function arguments without having to kludge up my class hierarchy to make them all inherit from some common parent class, or all provide some specific interface.

      Interfaces is a really great idea implemented in a really lame manner in the language. As I understand it, defining the interface means only specifying prototypes for the methods and arguments within the interface. No functional code. So you have to write the code for the interface yourself (in your class, or a parent class). And because Java doesn't have multiple inheritance, you can't just write the code relating to the interface only once - unless you can add it to some common parent class. And if you _do_ have a common parent class, you don't need to use the interface mechanism!

      in Java you can cast any type to another type (excluding the numbers int,long and stuff which can be cast to each other) e.g.

      typeA a = new typeA();
      typeB b = (typeB) a;

      --
      null
    45. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      Modifiing the structure of your code is a bad thing that you learn at school very soon. Only for some languages. Lisp programmers, for instance, regularly write macros that modify their code.

      Also if you do enable variable to be any type and let the structure of your code be modified at runtime in the client browser this a big hole to security for web 2.0 applications Only if you're not sanitizing user input correctly, which you have to do for any remote system anyway. Welcome to web 2.0 security; same as web 1.0 security.
    46. Re:(Troll) I hate java, why does /. love it? by HJED · · Score: 1

      Java's speed is equal to C++ using in many ways. And probably run faster without compiling it as it is optimised allot whilst running in the JVM.

      --
      null
    47. Re:(Troll) I hate java, why does /. love it? by ckaminski · · Score: 1

      Hah, at least you're honest...

      90% of the stuff I use written in C++ and VB and Python is also kludgy and prone to failure.

      It's not the language, it's the author.

      Java epitomizes the whole write-once-run-anywhere wish all us developers wish were reality. It's pretty close, but implementation and platform differences still exist. The fact though is that writing file system and socket code and complicated DB-centric software is easy with Java, and it has a huge and robust toolset built around it.

      It has it's failings, just like any other language...

    48. Re:(Troll) I hate java, why does /. love it? by csnydermvpsoft · · Score: 1

      Is it true? Who knows. I've never bothered to go find out because I simply don't code that much anymore. But it does get repeated quite a bit.

      I haven't taken the time to look for studies or to do a scientific comparison myself, but I do know this: I haven't had a performance issue that was Java-related in quite a few years now. Even on my six-year-old notebook, a Fujitsu Lifebook P-2046 with a 800 mhz Transmeta Crusoe (it was slow even for 2002), Eclipse runs about as good as Firefox 3 does (translation: they both are barely usable). On any moderately decent hardware, Java apps run very well; even load times are no longer an issue.

    49. Re:(Troll) I hate java, why does /. love it? by NoOneInParticular · · Score: 1
      I don't really think the trade-off is in static typing and catching errors. Static typing gains you speed. Python, Ruby and Javascript are complete hogs, simply because each member function call is a hash-lookup in the objects hashtable for finding the method that is bound to the name. This is the cost of dynamicity. In Java (and C++ for that matter), a member function call translates to a function pointer call, i.e., fast.

      The end result is that Java with Hotspot runs in the same order as C/C++, maybe a factor of 1.5/2 slower (if you're careful). Pure Python and Ruby will always run one order (factor 20 for Python, 40 for Ruby) slower because a function call is an expensive operation.

      The only way to get speed out of the dynamic languages is to mix them with C. Python is pretty good at that, and I consider PythonWithEmbeddedC a reasonable language, yet a bit clumsy.

    50. Re:(Troll) I hate java, why does /. love it? by argent · · Score: 1

      Kind of, though a restricted interpreter in Tcl is in some ways more secure than the Java sandbox because it doesn't just add checks blocking "dangerous" calls from the Safe interpreter. Instead it completely removes them from the interpreter's symbol table. Not only can't the interpreter "do" unsafe things, it can't even think about doing them. :)

    51. Re:(Troll) I hate java, why does /. love it? by asc99c · · Score: 1

      Compiling java doesn't lose the benefits - I've heard this argument a few times and it's bizarre. You can compile it on any platform. You only need to write it once.

      And as for troubleshooting, what makes Java any harder to debug than any other language?

    52. Re:(Troll) I hate java, why does /. love it? by prockcore · · Score: 1

      Javascript has a better object model?

      Javascript has a more consistent object model.

      Quick, how do you get the length of an array in java? Now how do you get the length of a string?

      array.getLength() and string.length()

      Compare to javascript:

      array.length and string.length

      If I were to say what the #1 problem with java programmers (programmers mind you, not the language) it's their irrational fear of variables. Every damn thing is a method. Can't have a variable without do-nothing getter/setter methods wrapped around it.

    53. Re:(Troll) I hate java, why does /. love it? by Cyberax · · Score: 1

      Array length: arr.length
      String length: str.length()

      "If I were to say what the #1 problem with java programmers (programmers mind you, not the language) it's their irrational fear of variables. Every damn thing is a method. Can't have a variable without do-nothing getter/setter methods wrapped around it."

      That's a good design. It'll look much better than properties will be added to the language later.

    54. Re:(Troll) I hate java, why does /. love it? by pdbaby · · Score: 1

      At work I write Java most of the day most days so take this with however much salt you do/don't want...

      The issues I have with Java nowadays are memory (not using too much, but enabling the JVM to take advantage of the physical memory in the machine and not complain that it's out of memory when it's only used 30% of the RAM available. It's not such a huge problem but it's my annoyance:)

      The JIT compiler is very impressive - it keeps basic profiling data when running the code as bytecode & compiles to native after 1000 executions of some code (that's configurable). This allows it to do some really cool jump rewriting, inlining, unravelling or simply optimising getters out of existance. There's a pretty cool debug jvm you can use to show the x86 asm generated from a class & if you call an empty method in a for loop the jit inlines it, then throws away a loop that doesn't change the program state. (spot the compiler geek)

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    55. Re:(Troll) I hate java, why does /. love it? by Gilbrt · · Score: 1

      Code modification requires you to be a lot more carefull about what you are doing. It is very powerfull, yes, but needs to be done with care. I suppose this can be different for some languages. I do not pretend to know all.

      This is sure that input validation is required. Web 2.0 or any remote application, requires remote validation on the server side. If you read old programming books, input validation is there. And if you follow web security course, they will repeat, first this to do, validate input, and secondly validate input... If I can give an advice to web developper, validate, we will have less security problems on web sites.

      Many java server side librairies make this validation not so tought to do. Many other languages do also, I know...

    56. Re:(Troll) I hate java, why does /. love it? by pdbaby · · Score: 2, Informative

      That is only true if you compile it, effectively loosing all the other benefits you claim.

      I saw this higher up in the comments and shrugged it off. But now I have to ask - huh?! Java is a compiled language. (are you confusing it with javascript, which is completely different and only shares the name?). Java's JIT works automatically, profiling bytecode as it executes and when it's ready, translating it into x86 instructions. By doing this it can do the sort of optimisations that C++ is incapable of doing - it can reorder an if condition or do some incredibly aggressive inlining (it'll even inline 3 method calls deep when its profiling indicates there'd be a performance advantage).

      Trouble shooting any large Java application is a nightmare

      Troubleshooting a badly written application is always a nightmare, troubleshooting a large application can be a pain. You can do all sorts of nice things with debuggers, too, to figure out what's going on - and Java's definitely easier to debug than C or Perl

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    57. Re:(Troll) I hate java, why does /. love it? by JebusIsLord · · Score: 1

      I didn't realize that I LIKED programming until my OO class (taught in Java). Pascal was okay, I guess, and assembly was interesting but tedious and frustrating. Java brought back that kid who played with lego. I could build objects that did stuff in it, and I didn't get confused when the program got larger!

      I'm sure there are better OO languages (i use C# mostly now. Don't judge! I'm working on ObjC/Cocoa.) but this was the one most of us learned on. For those who love OO programming, Java gets credit where credit is due. I'd call it the first successful OO language. C++ is used a lot, but it arguably isn't a succcessful language from an OO perspective - too complex, and there's too much procedural C++ code out there.

      --
      Jeremy
    58. Re:(Troll) I hate java, why does /. love it? by _Qiang_ · · Score: 0

      I have never found java to be FUN. we must have a different definition of FUN.

    59. Re:(Troll) I hate java, why does /. love it? by Ophion · · Score: 1

      Why do we the /. crown love Sun/Java?

      Isn't using the royal "we" in a programming discussion a little pretentious?

    60. Re:(Troll) I hate java, why does /. love it? by Alpha830RulZ · · Score: 1

      3. It's fast(er). Older Java GUI stuff was not fast, and it gave people the impression that all of Java is not fast. Well, Java 1.6 is fast.

      4. It's cross platform. This isn't a big deal for me so much, but it might be for some people.

      These two work for me. I'm implementing some data warehouse load and cleanse routines right now, using 1.5. I need them to work across windows and Linux. I need them to be fast on meager hardware. I benchmarked one of them at ~1200 records/sec today, which is nicely within what I need. This was running with a laptop as the load client, and a four year old AMD as the server. I know it's not going to spin any heads, but it's excellent for what I need. And it runs perfectly on Windows, Linux, and can be made to run under Z/os, which is a hurdle I need to jump for the MF bigots in the mother company.

      I like Perl, I like Python, I like Ruby, but Java/JSP is what I turn to when I need to do real work.

      --
      I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
    61. Re:(Troll) I hate java, why does /. love it? by Alpha830RulZ · · Score: 1

      your criticism of Java is based on bad experience using Java programs, not creating them. It would be like explaining the fine points of carpentry to somebody who's never picked up a saw or hammer.

      Actually, if I may riff on your metaphor, it's exactly related to carpentry. The question is, when one sees a poorly built cabinet, was it the fault of the carpenter, or did he not have the right/best tool. We're simply arguing over whether Java is a sufficient tool to build a quality cabinet. I think most would agree that it's sufficient.

      As with carpentry, there are multiple preferences in tools, and a good carpenter can often do better work with poor tools, than a poorer carpenter with better gear.

      Particularly in internal, IT developed apps, there are some atrocious apps out there. I'm not sure it's fair to blame the toolset. I've seen crap developed in C++, VB/.Net, c#, and Java, all in the last 6 months.

      --
      I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
    62. Re:(Troll) I hate java, why does /. love it? by smellotron · · Score: 1

      The JIT compiler is very impressive - it keeps basic profiling data when running the code as bytecode & compiles to native after 1000 executions of some code...

      Is it possible to store profiling information between runs? That's the big difference I see between in-house C++ and Java. Sure, after 1000 runs of any given function it may be optimal (and better than the equivalent statically-optimized C++)... but what about before then? For real speed, I find myself compiling C++ code with profiling enabled... then running a real-world load test... then recompiling with profile feedback, which can substantially improve code generation.

      If the Java JIT could take optimizations from one run and apply them to the next, that would be awesome. But if it can't, then it's worthless (to me), because it means that restarting a latency-sensitive application means "forgetting" all of its optimizations.

    63. Re:(Troll) I hate java, why does /. love it? by smellotron · · Score: 1

      Javascript has a better object model? You mean, a language without a basic stuff like namespaces (!!) has a better object model than Java?

      What do namespaces have to do with object models? I've never seen an ad-hominem attack against a programming language before!

    64. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 1, Interesting

      Is Java faster? Yes. But the first dynamic language (AFAICT) in this benchmark is only 18% slower (SBCL). Not exactly compelling evidence that all those obsessive-compulsive type annotations buy you much

      And if Lisps make your eyes glaze over, Python (+ Psycho) is only 3.4 times slower than the fastest Java in that benchmark. Hardly an order of magnitude.

      And dynamic languages can get much faster.

    65. Re:(Troll) I hate java, why does /. love it? by NoOneInParticular · · Score: 1
      I was specifically targetting the dynamic languages that the OP was aiming at. Those with a dynamic OO syntax, and for which function dispatch was based on a lookup instead of a pointer dereference. Although extremely dynamic, Lisp is a completely different beast, not based on hashtable lookup, and my point doesn't hold for it.

      I am however suprised at the speed of Python+Psycho though. It must have come a long way as last time I looked it was roughly twice as slow. One word of caution though with this combination: you need to refrain from using much of python's dynamicity to be able to let psycho do its job. Effectively psycho figures out type information at runtime to eliminate the overhead of dynamic dispatch.

      Overall the score is: Java 2.64, Python + psyco 9.22 (factor 3), Python 26.66 (factor 10), Ruby 76.56 (factor 25).

    66. Re:(Troll) I hate java, why does /. love it? by Anonymous Coward · · Score: 0

      > However, with Java, no matter what the user does, the program will STILL be cross-platform,
      > simply because it depends on a cross-platform runtime engine.

      Have all you people making such claims ever actually tried it? Even ignoring that certainly not all platforms have a JVM, and assuming the JVMs are indeed compatible (which they might not be, e.g. the RS232 support is only available for some, so at most the core parts are compatible which might not be enough) that might not be enough.
      Just try installing a 64 bit JVM on Windows and see what happens. I know for sure it is just impossible to install Azureus, nor was it possible to simply start an already installed version (probably that can be fixed, but so can a C program...).

    67. Re:(Troll) I hate java, why does /. love it? by Weedlekin · · Score: 1

      "The great advantage I find with the level of restriction that Java puts on your types is that it enables brilliant development tools."

      Brilliant development tools for dynamic languages were around long before Java appeared. LISP machines and Smalltalk's browsers and the old PARTS visual component wiring environment come to mind here. These notably sophisticated development environments ran in significantly less memory than a modern CPU has in its internal cache on processors clocking at a few MHz.

      "I can say from experience that refactoring of an app written in a dynamic language can be a colossal pain in the ass. Just finding everywhere that a particular class is being used can take hours or days."

      I suggest therefore that you explain how people managed to write first refactoring tool (the Refactoring Browser) in and for for Smalltalk, a dynamically typed language.

      http://c2.com/cgi/wiki?HistoryOfRefactoring

      Forth, an interactive non-typed language, has also used the term "factoring" to refer to what's now called refactoring since the early 1980s. It's something LISP programmers have also been doing since at least the 1960s, although the nature of LISP meant that no special tools were required.

      --
      I'm not going to change your sheets again, Mr. Hastings.
    68. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      Maybe you should program in a dynamically typed language, then :)

    69. Re:(Troll) I hate java, why does /. love it? by pdbaby · · Score: 1

      No, they are only per-run - although just as in C++ you can attach a profiler and optimise in your code... I'm not a fan of Java for client apps or apps which restart frequently, though

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    70. Re:(Troll) I hate java, why does /. love it? by arevos · · Score: 1

      I don't really think the trade-off is in static typing and catching errors.

      I'm not so sure. JIT compilation can do a lot to mitigate the performance impact of hash-lookups. The author of Psyco, for instance, holds that an expressive language like Python could theoretically run faster than C, because the compiler has access to more information with which to optimize the code.

      My experience with Clojure seems to bear out this claim. Clojure is a dynamically typed language for the JVM, and uses reflection by default to access Java objects. However, you can supply functions with "type hints" that the Clojure compiler can use to optimize the code. With type hints, Clojure runs as fast as Java.

      It seems to me that a clever enough compiler could make a good guess about what type a function would receive. If it was a JIT compiler, it could work it out through observation.

    71. Re:(Troll) I hate java, why does /. love it? by m50d · · Score: 1

      It's not fashion, it's practical experience. Perhaps you're a windows user? (They seem to get a much more performance-tuned Java, which is fair enough on sun's part really given the marketshare, but could account for the difference in opinion).

      --
      I am trolling
    72. Re:(Troll) I hate java, why does /. love it? by m50d · · Score: 1
      Java is fun to program in.

      My word, what planet are you from? Never has there been a more hideous and uncomfortable language to write than Java.

      --
      I am trolling
    73. Re:(Troll) I hate java, why does /. love it? by TemporalBeing · · Score: 1

      3. It's fast(er). Older Java GUI stuff was not fast, and it gave people the impression that all of Java is not fast. Well, Java 1.6 is fast.

      Java has certainly come along way since its start; however, it is still a slow beast. Though that is probably more due to its engineered/layering approach to programming than anything else any more but the bytecode nature doesn't help either - and never will. (I.e. the more layers you add the slower it goes, typically and irregardless of language.)

      4. It's cross platform. This isn't a big deal for me so much, but it might be for some people.

      That's only true if it supports the platform you work on. For example, Sun's JVM is not very platform friendly at the moment. Sure it supports the native OS/processor sets for the standard proprietary OS's (Windows/x86, HP-UX, Solaris, etc.) - but once you run Linux, you're pretty much stuck to the x86 processor series in 32-bit mode. So for those of us running a 64-bit mode or other processors, the open sourcing of Java will make a great big difference. We can finally get native support.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    74. Re:(Troll) I hate java, why does /. love it? by 3p1ph4ny · · Score: 1

      Java has certainly come along way since its start; however, it is still a slow beast.

      You'd be surprised. The code I write processes files > 10GB in size. From 1.4.2 -> 1.5 we got an order of magnitude shift in speed. From 1.5->1.6 we'll another order of magnitude gain and cut the memory consumption for the entire Java process in half, and this is without any refactoring of our code, just because the JVM got better.

      Sure, if we wrote the same code in C++ it'd probably be faster, but I'm not convinced the improvement would be worth the extra development time required.

      but once you run Linux, you're pretty much stuck to the x86 processor series in 32-bit mode.

      I'm not sure what you're talking about here... there's an x86_64 JVM installed on my Kubuntu 8.04 machine right now.

    75. Re:(Troll) I hate java, why does /. love it? by ckaminski · · Score: 1

      Strip out J2EE (except the servlet engine) and you've got a much simpler language. J2EE was an evolution in a shit-ton of best-practices that really didn't seem to pan out very well. Software is still hard to write, hard to maintain, hard to build extensible, reusable engines...

      I can't tell you the amount of C++ libraries that I've chewed through over the years and the horrible experiences I've had getting different mallocs to work together, debugging combination debug and release configurations...

    76. Re:(Troll) I hate java, why does /. love it? by fm6 · · Score: 1

      Carpentry and software development are very different in this respect: carpentry is old (one carpenter better known for his religious teachings lived 20 centuries ago, and it was an old craft even then) and software development was invented within the memory of people still alive. Carpenters have had a long time to refine their toolset, whereas programming tools are very much a work in progress.

      Also, "sufficient" is not a meaningful concept here. Any Turing-complete programming language is sufficient to write any program. There's a sort of quasi-sufficiency issue with low-level languages (doing a serious modern software project in machine language would consumer many lifetimes), but once you get past a certain point, all languages are sufficient, even the poorly designed ones. It's just a matter of whether the tool meets the particular programmer's needs.

    77. Re:(Troll) I hate java, why does /. love it? by NoOneInParticular · · Score: 1

      After some reflection on this issue (after submitting the post), I do concede that, theoretically, the author of Psyco has a point. However, in theory there's no difference between theory and practice. In practice, there is.

  3. Java never mattered by Anonymous Coward · · Score: 5, Insightful

    "Since Java itself never mattered except to sell books, I still don't see why opening it matters."

    What an ignorant and irresponsible editorial comment. Care to substantiate that claim, or even clarify what it means for a language to "matter?"

    1. Re:Java never mattered by Kickersny.com · · Score: 5, Insightful

      I can't believe that the editor put that comment. I'm not a huge fan of Java, but that's incredibly ignorant.

      Suggested tag: flamebait

    2. Re:Java never mattered by truthsearch · · Score: 4, Insightful

      I'm pretty sure he was being facetious. Everyone knows Java is in heavy use in various industries. Lighten up.

    3. Re:Java never mattered by Anonymous Coward · · Score: 3, Funny

      What do you expect from someone that still uses perl?

    4. Re:Java never mattered by gbjbaanb · · Score: 5, Funny

      Everyone knows Java is in heavy use in various industries

      particularly Publishing and eCommerce :-)

    5. Re:Java never mattered by Rary · · Score: 4, Funny

      "Since Java itself never mattered except to sell books, I still don't see why opening it matters."

      He must be referring to Amazon's use of Java.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    6. Re:Java never mattered by Anonymous Coward · · Score: 0

      Probably so, but I think the gp is suggesting that the comment is out of place in a story post by an editor, which is true, imo.

    7. Re:Java never mattered by Anonymous Coward · · Score: 1, Informative

      Really? I thought that Java had the lead in the TIOBE Index: http://www.tiobe.com/tiobe_index/index.htm

    8. Re:Java never mattered by Laser+Lou · · Score: 5, Funny

      Java isn't just for selling books. Look at how many Java libraries are around.

      --
      No data, no cry
    9. Re:Java never mattered by Anonymous Coward · · Score: 3, Insightful

      I really don't understand the "cool" factor in claiming bullshit that hasn't happened in years. Sure if you used Java in 2001 it was slow, unresponsive, and annoying. This is especially true when Java programmers didn't write very Thread friendly code on an event (such as clicking a button). Anyway has no one ever run Java in a server environment? You know there is more to Java than desktop apps and those run very well. As a matter of fact, many websites run off of Tomcat without you knowing it (which is a good thing). I personally love java as a language as it lets me get stuff done without having to much around with things I don't want to deal with. I guess Perl is employable as well, just go to IMDB's website, they are looking for some perl coders (read hackers).

    10. Re:Java never mattered by Anonymous Coward · · Score: 0

      >> "Since Java itself never mattered except to sell books, I still don't see why opening it matters."
      > What an ignorant and irresponsible editorial comment. Care to substantiate that claim, or even clarify what it means for a language to "matter?"

      YHBT. YHL. HAND.

    11. Re:Java never mattered by John+Jamieson · · Score: 1, Troll

      Ya, I realize that there are valid reasons for still using perl (like "I know it well because I have used it for years"), but at least we should be a bit embarrassed when we do.

      I rarely script, but the little I have done with Python makes me think I should try HARDER to forget I ever learned perl.

    12. Re:Java never mattered by jez9999 · · Score: 4, Informative

      Python is the only language I'm aware of (certainly the only major language) that uses whitespace to define blocks. Thank God. It's a *serious* dealbreaker for me.

    13. Re:Java never mattered by Z00L00K · · Score: 0

      I have recently finished a project with about 250k lines of Java code. It's now in production - and it's not Publishing or eCommerce.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    14. Re:Java never mattered by revscat · · Score: 2, Insightful

      That's pretty silly, man. Any text editor/IDE that has a modicum of intelligence can do that for you. Whitespace being a dealbreaker is kinda banal. I like Python, and use it frequently for various scripting tasks. I like Ruby and Groovy, too, but I'm not going to disdain for an entire language simply because of something as easily adjusted to as whitespace.

    15. Re:Java never mattered by jez9999 · · Score: 1

      Well, sorry, but I don't find it easily adjustable to. I fecking hate it when a text editor buggers around with my whitespace. I'm very protective about my whitespace. Four spaces vs a tab are VERY noticeable to me.

    16. Re:Java never mattered by Anonymous Coward · · Score: 0

      "facetious" is the new trolling.

      check!

    17. Re:Java never mattered by kcdoodle · · Score: 1

      Amazon is coded in C++ per Bjarne Stroustrup linked from recent Slashdot article.

      http://www.research.att.com/~bs/applications.html

      --

      - I live the greatest adventure anyone could possibly desire. - Tosk the Hunted
    18. Re:Java never mattered by Gilbrt · · Score: 1

      It is beeing used in many industries. It is very often what is behind application websites! It now offer a great platform for building complex and scalable web applications that can be run on any platform. We are using Java as a base for our website with a lot of success. There are other languages, but this one delivers. We also have swing application that have no preformance problems even when looking at millions of lines of data, passed all the upgrade of client machine (W2K, XP, ..., Solaris, linux) with no hassle and are a charm to install on the client machine thru webstart. Did anyone know that the kindle runs many java apps...

    19. Re:Java never mattered by Rary · · Score: 2, Insightful

      Actually, it uses a bunch of technologies, including C++, Java, Perl, and much more. Here are some specifics.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    20. Re:Java never mattered by chris_mahan · · Score: 2, Insightful

      Then use a text editor that automatically converts tabs to spaces.

      --

      "Piter, too, is dead."

    21. Re:Java never mattered by Anonymous Coward · · Score: 0

      Good old make also relies on making a distinction between various types of whitespace. I've never heard a fanboy telling me how great that is a feature, oddly enough. Syntactic whitespace is just brain damaged.

    22. Re:Java never mattered by jilles · · Score: 1

      For something that doesn't matter, it is mentioned an awful lot on a site that still claims to focus on "stuff that matters". Little pokes at Java have been in fashion for a long time here. I think Java is still topping the list of languages discussed on this site and has long done so. No thread about Java is complete without these little pokes.

      So kind of on topic to do it right in the summary. Bored editor puts some extra flamebait in summary of an obviously pointless article and the accompanying stupid rhetorical question. What's new?

      --

      Jilles
    23. Re:Java never mattered by mkosmul · · Score: 2, Insightful

      Suggested tag: flamebait

      Suggested tag: sarcasm

      Fixed

    24. Re:Java never mattered by dintech · · Score: 4, Insightful

      I know it's a joke but this is a good place to add this comment.

      My experience is in investment banking and every single bank I've ever heard of write the majority of their buisiness-critical server-side apps in Java. Hedge funds too. Any place where you want to quickly develop large server-side in-house apps, you can do that much more reliably with Java and you have access to a huge talent pool of developers. The reality is that the systems that drive the economy are written in Java. Some trivial MP3 catalog GUI, bulletin boards or throwaway websites don't really turn the wheels of capitalism I'm afraid.

      It seems Taco has basically doesn't understand how I.T. in the real world actually works. My advice to him is to quit whining and accept the ideological war against Java has already been lost years and years ago. Java is huge, deal with it. That's a reality that won't go away just because you post a throw away editorial comment on Slashdot.

    25. Re:Java never mattered by Sentry21 · · Score: 1

      I've always said that if you're not indenting your blocks with decent amounts of whitespace, you're a lousy programmer in the first place. The difference is that in Python, if you mess up your indenting, you mess up your blocks, whereas in a lot of other languages, you can easily get your indenting right and your blocks wrong regardless.

      One of the things I like about Python is that there are a lot of things I don't have to type. I don't have to type { and } (or begin and end), I don't have to type parentheses in every conditional, and so on. I find it saves a lot of time just on that front, especially when you use different keyboards or keyboard layouts where {} and () aren't as easy to type.

      When I'm writing a program in Python, I find it handy to be able to just stop coding and test it. In other languages, you have to ensure that you close your blocks and do it properly. It's a minor thing, but it's still nice.

    26. Re:Java never mattered by Cigarra · · Score: 1

      Then use a text editor that automatically converts tabs to spaces. Which is... pretty much ANY code editor.
      --
      I don't have a sig.
    27. Re:Java never mattered by ttfkam · · Score: 1

      If your editor cannot alter the visual spacing to a tab, you need to get a new editor. C'mon! That was a solved problem in the early 90s if not earlier.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    28. Re:Java never mattered by g0at · · Score: 1, Offtopic

      He's an asshole. But more to the point, he's likely now laughing masturbatorily at the fact that people like you and me are responding to his childishness.

    29. Re:Java never mattered by snoyberg · · Score: 1

      I'm not a fan of Python myself, but I think the difference is that Python will regard spaces as indentation as well, whereas make demands the use of a tab.

      --
      Thank God for evolution.
    30. Re:Java never mattered by gbjbaanb · · Score: 2, Informative

      the joke, really, is that Java is used to power the systems in a lot of eCommerce sites (think eBay or Amazon) and Publishing (if you consider some of the big online media sites to be publishing).

      So is it a joke, or is it a serious comment, which is it? Is it true, or is it false? :-)

    31. Re:Java never mattered by geekoid · · Score: 0, Redundant

      IT hasn't brought anything new to the table. There isn't anything it does that you couldn't do when it was released.

      It was hyped far beyond it's capabilities by people who wrote or published programming books.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    32. Re:Java never mattered by Abcd1234 · · Score: 4, Insightful

      Except, of course, that Python doesn't provide enough context for an editor to properly indent blocks automatically, as there's no proper block delimiters. So, if I, for example, need to change the level of nesting in an existing block of code for some reason (say, introducing an if statement, or factoring some code out into a separate function), the editor can't help me to ensure I get the indentation level right. And in Python, incorrect indentation means incorrect semantics.

      Sorry, it *is* a deal-breaker.

    33. Re:Java never mattered by Anonymous Coward · · Score: 0

      You will find it hard to work in a team. Everybody has different ideas about whitespace. You will never convince other fanatics (like you) that your way is superior.

    34. Re:Java never mattered by Anonymous Coward · · Score: 0

      I think CmdrTroll would be more appropriate.

    35. Re:Java never mattered by idontgno · · Score: 4, Funny

      I edit code like $DIETY intended: with vi. When I insert a tab, then BY $DIETY I expect 0x09 to be inserted into my ASCII-only, 7-bit-safe, mostly-human-readable text file.

      Heh. That sounds like a crotchety-old-programmer joke, and it is, except it's not entirely a joke. I really do use vi as my primary coding editor. I guess I just like the pain; it reminds me I'm alive.

      And the crotchety old programmer bit? That's not a joke either. Now get off my lawn, you emacs-using kids!

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    36. Re:Java never mattered by revscat · · Score: 1

      So, if I, for example, need to change the level of nesting in an existing block of code for some reason (say, introducing an if statement, or factoring some code out into a separate function), the editor can't help me to ensure I get the indentation level right.

      Bollocks. The semantic requirements around indentation are no more or less complex than the semantic requirements for curly braces in other languages. I've been using python for two years using vim as my editor. I have never, ever run into a compilation issue because of whitespace. Not once. I never have to think about it, and I doubt that emacs (or any other editor worth its salt) is any different.

      I don't know what editor you are using but it is sub-par at best.

    37. Re:Java never mattered by Foolhardy · · Score: 1

      Haskell programs can use whitespace to define blocks. However, anything that can be done with the layout rule (whitespace) can also be done with braces and semicolons, so you can have it either way.

    38. Re:Java never mattered by Abcd1234 · · Score: 1

      See my other comment, as clearly you don't understand the issue I'm describing.

    39. Re:Java never mattered by Anonymous Coward · · Score: 0

      Wow.. bashing a language that forces whitespace. Oh wait! You must be one of those developers that's too lazy to write clean code. Or better yet a developer whos code is so bad he has to obscure it by making it overly complex.

      Either way.... Python > you ;)

    40. Re:Java never mattered by Iron+Condor · · Score: 1

      Any place where you want to quickly develop large server-side in-house apps, you can do that much more reliably with Java

      This is meaningless gibberish. The term "more" indicates a comparison: "more reliably with java THAN [insert something here]"

      and you have access to a huge talent pool of developers.

      I wouldn't exactly call it a "talent pool", but this is of course the reason why so much software is written in Java: anybody who knows to code in more than one or two languages knows that Java is never the appropriate choice, but it doesn't help you to know that [languageXYZ] is the right thing to use for this problem here if you can't find competent [languageXYZ]-programmers -- when you can buy Java-monkeys for a dime a dozen. If necessary in India somewhere.

      Java makes large software projects cheap because the competitive pressure amongst all the Java-monkeys keeps them cheap.

      Which keeps your IT staff replaceable and doesn't lead to the kind of painting-yourself-into-a-corner we saw with COBOL where one guy wrote apps with functionality that requires twenty folks these days, but when that one guy leaves you're suddenly hosed. Instead hire twenty Java dudes at one-twentieth the price each and your software system becomes less dependent on a single choke point...

      --
      We're all born with nothing.
      If you die in debt, you're ahead.
    41. Re:Java never mattered by JAlexoi · · Score: 1

      >> I have never, ever run into a compilation issue because of whitespace.

      The problem there is not limited to compilation issues, but rather like the unintended fallthrough in a switch-case statement because you forgot to add break.

    42. Re:Java never mattered by recharged95 · · Score: 1

      Or Ebay's...

    43. Re:Java never mattered by zrq · · Score: 1

      I'm a Java programmer, but I'm interested in learning other languages too. I actually like using { } in Java, but I'm happy to use whitespace in Python.

      What I don't understand is why did they decide to use underscores for the class initializers ?

      Java inherited a lot of its syntax from C/C++, but when they started work on Python they had a clean slate. Using whitespace to define blocks and not requiring a ; at the end of every line removes a lot of the unnecessary punctuation.
      But this

      def __init__(self)
      just looks ugly to me.
    44. Re:Java never mattered by ishobo · · Score: 1

      This is true for the forex market as well. I used to work for a trading platform and the backend is written in Java. The clients were primarily Java with some .NET. All the integration code with FIX, STP providers, and the banks (such as Citi, UBS, RBS, DB) is Java.

      --
      Slashdot - The great and glorious cluster fuck of Internet wisdom.
    45. Re:Java never mattered by prockcore · · Score: 1

      reddit broke a few months ago because someone uncommented code and put it at the wrong indentation level.

      Plus without curlies, you can't use % in vim to jump from the beginning to the end of a block.

    46. Re:Java never mattered by EvilRyry · · Score: 1

      Fine, then use a tab. Python doesn't care if you use a tab, a space, or twenty spaces. Just keep it consistent within an indent level. If you can't manage this, you probably shouldn't be programming anyway.

      However, note that most projects will only accept code with 4 spaces as an indent as outlined in PEP 8. Fortunately, there are handy tools like indent to automatically fix this for you if you really insist on using tabs.

    47. Re:Java never mattered by ardle · · Score: 1

      It's a flame :-(

    48. Re:Java never mattered by Kalriath · · Score: 1

      Personally I feel that for the majority, Java desktop apps are terrible (they range from mediocre speed down to slow, they don't use native OS widgets etc - I realise some of these things can be avoided by doing some extra coding, but you shouldn't have to) but Java server apps are absolutely great (for example Openfire Jabber Server).

      Maybe it's just the different coding practices, but still!

      --
      For a site about things like basic rights, Slashdot users sure do like to censor "dissent".
    49. Re:Java never mattered by ggvaidya · · Score: 1

      Amazon, the joke goes, is written in COAL: C++, Oracle, Apache, Linux. But that's just the joke.

    50. Re:Java never mattered by thegux · · Score: 1

      You can use tabs in Python if you want? Or spaces if that's what you want? I don't get what you're complaining about.

    51. Re:Java never mattered by Nefarious+Wheel · · Score: 1

      My experience is in investment banking and every single bank I've ever heard of write the majority of their buisiness-critical server-side apps in Java.

      Strange, I have a background in investment banking too (well, managed funds) and in my experience it's been mostly a rather dispiriting mountain of endless bloody spreadsheet VBA. Granted this isn't server-side code per PP's reference, but it amounted to billions of dollars living exclusively on Excel. Reason? Bank rules said all development had to be offshore, but VBA was considered "just a few spreadsheet macros to be coded" and the coders for this could be sourced locally.

      "Just a few macros" usually meant "just a few thousand lines of VBA code per spreadsheet". This was considered a good thing in a critical delivery cycle (i.e. "we'll get fined big time for noncompliance if it isn't in by next week").

      So, in some compensation for having to expensively maintain a rather inelegant coding environment, they got to develop nice efficient relationships with certain agile coders, version control became irrelevant (code stayed with the document) and you could basically wrap the spreadsheet around a rock and throw it to the next company and they could read it (IDE stayed with the document, too). So there's a case of IT in the "real world" for you, enough to make a grown man cry.

      But it works.

      Oh that wasn't the whole environment, I'll admit -- there was also that outsourced/offshored Canadian application that ran absolutely rock solid and reliable as well. It ran on VMS.

      --
      Do not mock my vision of impractical footwear
    52. Re:Java never mattered by smellotron · · Score: 1

      I don't think it sounds crotchety to use vi... I'm mostly fresh out of college, and vi is my editor of choice... FOR PYTHON! Seriously though, your approach to python sounds like my approach to swinger parties and wife-swaps. Deathly opposed, but probably only because of infamiliarity.

      Come one... join us...

    53. Re:Java never mattered by Alpha830RulZ · · Score: 1

      I think Bjarne is mistaken. Simply surf Amazon's help wanted ads in craigslist in Seattle. You don't see much C++, you see lots of Java and Oracle.

      --
      I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
    54. Re:Java never mattered by Anonymous Coward · · Score: 0

      Huh. I see less and less sites using java servlets or jsp.

    55. Re:Java never mattered by Anonymous Coward · · Score: 0

      Don't forget Haskell ...

    56. Re:Java never mattered by ThePromenader · · Score: 1

      There are some things java does that no other language can do: for example, java is the only means of making a link between hard-disk content and remote servers that can up/download entire directories through a browser interface.

      --

      No, no sig. Really.

      ThePromenader
    57. Re:Java never mattered by julesh · · Score: 1

      Except, of course, that Python doesn't provide enough context for an editor to properly indent blocks automatically, as there's no proper block delimiters. So, if I, for example, need to change the level of nesting in an existing block of code for some reason (say, introducing an if statement, or factoring some code out into a separate function), the editor can't help me to ensure I get the indentation level right.

      What do you mean it can't? As long as the indentation was right to start with, it's a simple matter of selecting the appropriate block and indenting or unindenting by a constant amount. Every programmer's editor I've ever used is capable of doing this.

    58. Re:Java never mattered by redscare2k4 · · Score: 1

      Python is the only language I'm aware of (certainly the only major language) that uses whitespace to define blocks. Thank God. It's a *serious* dealbreaker for me.

      That alone is enough for not touching it with a 10-foot pole. How the hell are you going to maintain a 10000 lines program written by someone else in a language that uses whitespace to delimitate blocks?!?!?!

    59. Re:Java never mattered by ckaminski · · Score: 1

      I found a vi keybinder extension for Eclipse and LOVE it. Now if only Ultraedit would adopt a vi interface, I'd use it. And if they went back to MDI tiled windows. WTF is it with everyone going to tabbed-interfaces? With my super-wide monitor, I can have multiple pages up now side by each.... :-/

    60. Re:Java never mattered by Anonymous Coward · · Score: 0

      Taco's comment comes from someone who is a piss poor Perl programmer. Take a look at Slashcode, and wonder no longer why it took them so long to produce validating HTML for instance. As I remember it, Taco was a college dropout who got lucky - if he'd had to make his way in a more conventional programming job he'd probably be flipping burgers in MacD's by now.

    61. Re:Java never mattered by ckaminski · · Score: 1

      If you mean applets, you could be sort of right. But FTP has been doing this for years (ncftp), and webdav is suitable for doing it now... so you're mostly wrong, insofar as you have stated. Feel free to elaborate...

    62. Re:Java never mattered by ckaminski · · Score: 1

      I know for a fact that certain components of Amazon's caching architecture *WERE* in C++, as I supported them deploying ObjectStore for their caching tier. I'm not sure they're *STILL* using it (last I knew was late 2004).

      But something of that size is certain to have an agglomeration of tools and languages.

    63. Re:Java never mattered by LizardKing · · Score: 1

      Amazon's first rewrite (circa 1999 - 2000) was in C and C++. I was interviewed for a role on that project but declined, having just quit Yahoo! in disgust at what their C++ codebase was like. I understand that since then Amazon have rewritten much of the system again, but this time in Java, while Yahoo! now do much of their development in PHP.

    64. Re:Java never mattered by revscat · · Score: 1

      Whups. My bad.

      Ok, I've still never run into that, though. But... yeah...

    65. Re:Java never mattered by Free+the+Cowards · · Score: 1

      And let's not forget that you can write applets in any language which can be compiled to run on a JVM, of which there are many.

      --
      If you mod me Overrated, you are admitting that you have no penis.
    66. Re:Java never mattered by Anonymous Coward · · Score: 0

      Ah, but that's because, for the most part, before Java the acceptable standard tech in similar projects was C++.

      It's no wonder they ran crying to Java.

      (Some investment banks who were able to tolerate fringe technologies if there was a sufficient advantage went with NeXTSTEP/Objective-C, but they also started moving towards Java, because NeXT was starting to look *too* risky, although sometimes it took quite a long time to port their software.

      And, hell, I know one i-bank that, in 1994, had Symbolics LISP machines on some trading desks.)

    67. Re:Java never mattered by ThePromenader · · Score: 1

      There, with parent, I learned something.

      As for ftp, it is not secure, thus not an option; java allows local I/O interaction with ssh, ftp does not, at least not without a pre-programmed stand-alone client program. I need in-browser cross-platform capability.

      --

      No, no sig. Really.

      ThePromenader
  4. Yes. by MadMidnightBomber · · Score: 3, Informative

    Really.

    How many times have you been screwed over by a vendor who thinks they know best? (Symantec / L0phtcrack anyone?)

    --
    "It doesn't cost enough, and it makes too much sense."
    1. Re:Yes. by Anonymous Coward · · Score: 1, Insightful

      Not to mention that Java will probably be the COBOL of our generation. Isn't it a good thing that we'll be able to configure it?

      We may not be able to kill the legacy code, but we'll at least have a better chance of killing the legacy platform!

    2. Re:Yes. by Not+The+Real+Me · · Score: 1

      "...Java will probably be the COBOL of our generation..."

      This should be written as: "Java will probably be the COBOL *and* Visual Basic of our generation"

      I've seen some expensive commercial applications that use a combo of VB6, VB.Net and Java within a single app. The client installer installs the .NET 1.1 redistributable, then it installs a Java runtime and finally it installs the VB6 runtime files.

  5. "Java never mattered"? by Chemisor · · Score: 4, Insightful

    I find it funny that we have statements like "Java never mattered except to sell books", while I distinctly remember hordes of posters on this very site only a few years ago, rabidly arguing that Java is the best thing ever and that nobody will be using anything but Java in the future. Now, we have hordes of Ruby, Python, and what-not advocates saying the same things. I guess it's their turn. I'll just keep my C++, thank you very much, which nobody advocates these days, and everyone says is obsolete, too complicated, and inherently broken. Go ahead, mod me as flamebait! I'm used to it.

    1. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      Guys! For the first time someone on /. is right!

    2. Re:"Java never mattered"? by scubamage · · Score: 4, Informative

      I've used both C++ and Java, I like them both. C++ just has a lot more pitfalls that a savvy programmer knows to avoid, whereas a novice will get swallowed into the cold oblivion of core dump and seg-fault hell. But, its also goddamned powerful.

    3. Re:"Java never mattered"? by Anonymous Coward · · Score: 5, Insightful

      The problem with the whole C++ is "obsolete, too complicated, and inherently broken" and isn't advocated these days is that it remains the language of choice for real complex scientific and engineering challenges, especially time-critical/real-time systems, which the newer languages typically don't address well.

    4. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      Hey, I spent the better part of the late 90s defending FORTRAN against you C++ types.

      Now, go get me a glass of water Junior. ;)

    5. Re:"Java never mattered"? by Bill,+Shooter+of+Bul · · Score: 1

      I think too many people base their judgment of a language based upon the worst implementation of any program they've seen in that language. C++ will always have a place in my heart & I'll use it when ever practical. I think Java just suffers form some really crappy libraries, all the "middleware" api's, application servers, frameworks,ect. Just ignore that and with good application design, you'll be ok.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    6. Re:"Java never mattered"? by jellomizer · · Score: 0

      Well Java filled a hole that as time went on never needed to be filled.
      When Java first came out the Web was more of a toy or information tool. Not seriously used for Application Development. All real applications were programs that ran on your personal computer, compiled into a byte code Modern UI was the Windows Interface, however this culture created a Gap where applications will only run a system it was designed on. A windows program will only run on windows. A Solaris program will only run in Solaris... Moving from one platform to the next if the application had any complexity to it would require a major porting project that was more then just a recompile. Hense Java it was designed to help unlock the dependency of the OS and the application for most apps. For use on imbedded devices which have more OS veriety however it allowed Different Desktop OS's to run the same app. Thus its value and its popularity on slashdot as if everyone made Java Apps then you can use Linux without having to worry about finding good applications.

      But what happened was the web standards grew after the browser wars Java second cousin twice removed JavaScript became widly used across web browsers, as well CSS that made your page look the way you really want it to. So today Web Applications run "good enough" compared to local programs in terms of interface that having a Java App is not that important anymore. Most apps are moving to the web even custom apps. So Javas key advantage is loss. As Python, Ruby, PHP... while are primarly considered interpreted lanaguge without the byte code (yes I know at least python you can make PYC files which are bytecode....) but because they are on the server protected with the OS Security you can make apps and do more realtime chanages to the code vs. compiling it over and over again. and not have your users mess with the design.

      So the need for Java is not much of an issue. For the cases where Java is good for your are often better off with an interpreded serverside language or a OS/Platform particular app. As Java fills this middle ground that is becomming less and less popular.

      If you don't beleave that the normal application is dieing check out you computer store and compare it 10 years ago. Before CompUSA went under, when it was new about 3/4 of the store was dedicated to software, then a couple years ago only 1/4 of the store is software the rest was hardware.

      Back in them olden day we needed an app to do anything. CD's with encylipedias, application to connect to online services (AOL Disks) $5.00 games of cards... etc... Today if you are board and want to play a quick game just go on the web and play a flash based game or access encylipedia sites to get some info. You don't really need extra software to access companies information it is done all on the web. So the app is dieing and OS independence is getting better. Hense why Microsoft want to kill google.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    7. Re:"Java never mattered"? by Reality+Master+101 · · Score: 1

      ...while I distinctly remember hordes of posters on this very site only a few years ago, rabidly arguing that Java is the best thing ever and that nobody will be using anything but Java in the future.

      You're going to have to pull a quote on that. I highly doubt anyone in the history of the universe has ever said that "Java is the best thing ever," much less that nobody will be using anything else. Even rabid Java advocates (hopefully) recognize the various levels of brain damage, especially in the libraries. I personally hate just about everything about the language, though I do recognize that it's a good fit in embedded device applications, which is what it was designed for in the first place.

      As for Slashdot specifically, if anything, this site seems to be pretty hostile to Java.

      --
      Sometimes it's best to just let stupid people be stupid.
    8. Re:"Java never mattered"? by JohnSearle · · Score: 1, Offtopic

      I take issue with you saying "Go ahead, mod me as flamebait! I'm used to it."

      Taking a look at your comment history, most of your comments have been modded 'insightful' or 'funny'. And, if you do have 'flamebait' comments, then they're hidden below my field of view, which would imply that they are not recent, and thus I doubt you're used to it.

      If I had some mod points to hand out, you know where I would be putting them for this inciting lie.

      - John

    9. Re:"Java never mattered"? by scooterjohnson · · Score: 2, Informative

      I'll STILL defend FORTRAN as a scientific platform. I have used it for astrophysical simulations and all sorts of scientific modelling within the past few years and it is the one language that both my (physics) profs and I were able to debug at the same time. If you're crunching tons of numbers, need exploit parallelism in your programs, and be able to show your work to a physicist all on an open-source platform, I think FORTRAN is still the way to go.

      --
      I start the day with coffee and I end it with a beer. In between I wonder what the hell I'm doin' here.
    10. Re:"Java never mattered"? by salarelv · · Score: 1

      Maybe the world is full of crappy noobs who cant program very well? I am a employer and have asked a lot of candidates what they can too and how much they want to get paid and very often come across people who want to have big bucks but have only experience with like PHP or Java but really they don't know anything of software development. Every decent programmer has to know what is a pointer and how the basic memory management goes.

    11. Re:"Java never mattered"? by Chemisor · · Score: 1

      > If you don't beleave that the normal application is dieing check out you computer store and compare it 10 years ago.

      Of course the "normal application" is dying. I'm usually the one to bring up that point in the first place. The problem is that it isn't being replaced by anything. To put it bluntly: web apps are crap. The interface is unusable. The latency is hair-raising. The functionality is nonexistent. The security is atrocious. Oh, and you don't get to keep your files any more. Some online company has it, reads it, and uses it to serve you ads. The normal application really is important. Just because nobody makes them any more, doesn't mean they aren't needed. Nobody makes them because the skill has been lost. And Java and interpreted languages are at least partly to blame.

      > Back in them olden day we needed an app to do anything. CD's with encylipedias, application
      > to connect to online services (AOL Disks) $5.00 games of cards.

      You need an app to do anything now too. Sure, information is now online, but that's it. It's about learning stuff, not doing stuff. If you want to do anything, to create anything, you need a desktop application. You aren't going to be writing a novel on a cellphone. You aren't going to edit an animated movie on "Google Movie Editor". You aren't going to design a circuit board, print it, iron it, and etch it. All of these things need real apps. Online just doesn't cut it.

      > Today if you are board and want to play a quick game just go on the web and play a flash based game

      Yeah, like there are any flash games worth playing. If you are easily amused, try Minesweeper. If you want a real game, like say Civilization, you need an app. You are not going to play the damn thing on a cell phone. You need performance, you need decent graphics, and you need good gameplay. None of these things can be done in a web app. Graphics can be done on the desktop, but the other two requirements can no longer be implemented due to lack of skills.

      > You don't really need extra software to access companies information

      What people forget these days, that information is not an end in itself. You don't just go looking for information without a reason. If you do, you are wasting time. You need information so you can do stuff. It is a means to an end. Yes, you can find information on the web, but you need a desktop app to do stuff, and that latter part is what's really important. Information doesn't make the world go around. People doing real things make the world go around. You can try building an "information economy", but you will not succeed unless there are enough people actually doing stuff who can support you. It's basic economics. You need producers. If you have no producers, your economy will die. It's that simple, and is amply illustrated by what's going on in the United States today.

      > you can make apps and do more realtime chanages to the code vs. compiling it over and over again.

      Oh, and this is bullshit too. Compiling an application doesn't take long, unless you have a bloated behemoth like OpenOffice with a gigabyte of source code. But in that case, all the time you save by not compiling it, you'll lose by interpreting it. Heck, just the loading time alone will probably do it.

    12. Re:"Java never mattered"? by CastrTroy · · Score: 1

      Seems about right to me. I'm a VB.Net developer, and it's kind of depressing, having everyone think your language is a toy language for non-developers. I personally thing VB.Net is great, and don't really understand why it doesn't get more credit. I guess you really just explained it to me.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    13. Re:"Java never mattered"? by jez9999 · · Score: 5, Funny

      C++ will always have a place in my heart & I'll use it when ever practical.

      Don't you mean &&?

    14. Re:"Java never mattered"? by John+Jamieson · · Score: 1

      Surprise, each language has area's they should and shouldn't be used in so as the weaknesses of each language are finally realized, the fanboys move on to the next fad.

      Please keep your c++, somebody has to write those applications that require it. I don't hear many people knocking it myself, but I do know that most of the people coming through IT organizations SHOULD NOT even try to code c++.
      It takes a real mind to do all your own garbage collection, use templates properly and realize the power of operator overloading.

    15. Re:"Java never mattered"? by jez9999 · · Score: 1

      I personally thing VB.Net is great, and don't really understand why it doesn't get more credit.

      It's literally C# with crappier (unnecessarily verbose) syntax. There's a difference between nice syntax, and having to spell everything out. Do they still have 'If ... [...] End If'?

    16. Re:"Java never mattered"? by CastrTroy · · Score: 1

      I highly doubt anyone in the history of the universe has ever said that "Java is the best thing ever,"
      Apparently, Google agrees with you. It returns 2 results, both are people saying that java is not the best thing ever.
      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    17. Re:"Java never mattered"? by Chemisor · · Score: 1

      > You're going to have to pull a quote on that.
      > I highly doubt anyone in the history of the universe has ever said that "Java is the best thing ever,

      And how am I going to do that? Slashdot search is not exactly Google. All I have is my memory now. But Java was most definitely hyped as "the best thing ever" when it first appeared. "It will make all apps platform-independent", they said (it didn't). "It is so much better at memory management than C++", they said (it isn't). And "everyone will be using it", they definitely said (and that certainly isn't true either).

      > I do recognize that it's a good fit in embedded device applications, which is what it was designed for in the first place.

      Are you nuts? Running a huge JVM on an embedded device? Of course, these days "embedded" just means it is not a desktop, and has a crappy OS interface. Back when Java first came out, that certainly was not true. Memory on embedded devices was seriously scarce, and so was processing power. Running a JVM would have been absolutely out of the question. Java was designed as a safe generic language, correcting the perceived faults of C++, as it were.

      > As for Slashdot specifically, if anything, this site seems to be pretty hostile to Java.

      Now it is, that it is out of favor. People are switching to Python and Ruby in droves.

    18. Re:"Java never mattered"? by Z00L00K · · Score: 0
      And I personally think that C is a lot better than C++ since C++ can really be a pain to track down bugs in.

      C++ is more or less squeezed between C and languages like Java and C#.

      Fortran is a completely different track, and I suspect that maybe some things done in Fortran may be hard to pass over to another language. Some is probably straight-forward and can be rewritten in an object-oriented language while other parts needs a language like Erlang.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    19. Re:"Java never mattered"? by JohnSearle · · Score: 1

      ha. A joke about flamebait gets modded as such.

      I swear it sounded funnier in my head.

      - John

    20. Re:"Java never mattered"? by Mongoose+Disciple · · Score: 1

      It's literally C# with crappier (unnecessarily verbose) syntax. There's a difference between nice syntax, and having to spell everything out. Do they still have 'If ... [...] End If'?

      As of .NET 3.5, this is no longer true. VB.NET actually has some features that C# doesn't -- XML literals and a few other things that are mostly useful if you're using LINQ.

      (I assume C# will get them in the next version if they turn out to be useful out in the trenches.)

    21. Re:"Java never mattered"? by Hal_Porter · · Score: 1

      Hense why Microsoft want to kill google. Microsoft doesn't want to kill Google. Microsoft wants to fucking kill Google.
      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    22. Re:"Java never mattered"? by jellomizer · · Score: 1

      I am guessing you havent upgraded your browser/internet connection in the last 10 years. Most web apps are a bit behind but the new ones comming out are getting pritty good. Poor designes in most is not because of the tool it is due to bad programming and designing on the tools part. Looking back at the old apps 10 years ago the UI's were just as bad and clumsy. Having a good internet connection make them run at an OK speed without the delays.

      I never said all apps will go away. However I wouldn't use Java to create those apps to do what you wan't. (movie editing, word processing....) As they will run needly slow.

      Games I said those $5.00 games they use to have at the store. Not the $50.00 ones. These are games that are just fun to play for a few days and if you are not a gammer they are actually quite Fun, to take a break.

      Back in them good old day people needed to copy the company information onto disk and put it on their home PC. Then if they change anything then you have syncing issues. Doing it via web allows the data to be in "real time"

      Compiling does take time, I am not talking about these little apps that you do in CS Class I am talking about bigger apps. You change a library file then you need compile the dependencies (if a static build) or other problem with dynamic builds where you need to insure correct versions and such.

      It seems your experience is based on really old stuff, you are thinking like the web back in 2002 not 2008 there has been a huge difference and if you keep up on development practices and working on larger projects you see there are advantages to using the Web over making apps in Java.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    23. Re:"Java never mattered"? by Shade+of+Pyrrhus · · Score: 4, Informative

      Java second cousin twice removed JavaScript No. JavaScript is a scripting language, whereas Java is a full-fledged programming language. Regarding the name: "The naming has caused confusion, giving the impression that the language is a spin-off of Java, and it has been characterized by many as a marketing ploy by Netscape to give JavaScript the cachet of what was then the hot new web-programming language" [History of JavaScript].

      Most apps are moving to the web even custom apps. So Javas key advantage is loss. As Python, Ruby, PHP... while are primarly considered interpreted lanaguge without the byte code (yes I know at least python you can make PYC files which are bytecode....) but because they are on the server protected with the OS Security you can make apps and do more realtime chanages to the code vs. compiling it over and over again. and not have your users mess with the design. You do know that Java is not just applets and client applications, right? Java is heavily used on all of the things you just talked about - serverside apps. See servlets, JSP, etc. Both Python and Java are interpreted, so I don't know what you're talking about: "Java bytecode is interpreted or converted to native machine code by the JIT compiler." [Wikipedia-Java].

      I guess I should know by now to expect most people to not know what they're talking about when they post.

      But, back to the issue. I fully agree with many other posters claiming it reduces the possibility of being screwed over by Sun or licensing inside of the various packages (audio is one that comes to mind - the one they're still rewriting).
    24. Re:"Java never mattered"? by Thalagyrt · · Score: 1

      I only found one person saying Java is the best thing ever back in 2005. I don't count when they append a condition such as "in situation x."

      http://developers.slashdot.org/comments.pl?sid=154501&cid=12957471

      Other than that there isn't much.

      --
      Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo!
    25. Re:"Java never mattered"? by Z00L00K · · Score: 1
      It's certainly possible to ignore all framework and libraries and implement all those yourself, and that may be cool and good for some situations but for other you may be better off by using some of the libraries you hate so much - just because then even some other people may be able to do maintenance on that code.

      Application servers and frameworks - well, there are those that are good and those that are bad. Latest version of Tomcat isn't really bad. You may still write your own web server - and no one will stop you, but is it really a cost-effective solution?

      The only thing that I have found is that Java can suck sometimes at memory management. You are completely left on your own to the garbage collector - which in some cases will be causing you a lot of headache. Especially if you are in a situation where you know that a specific release of an object will be a lot better.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    26. Re:"Java never mattered"? by Shade+of+Pyrrhus · · Score: 0

      I guess I should also mention for the unaware that in server-side web programming, just like Python, you don't need to compile JSPs before running or after making a change. I'm not familiar with the entire process, however I do know that Python files are compiled into bytecode when imported.

    27. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      I'm probably not much of a guru in either language, using them mostly for scientific simulations, games and controll systems, but my general take on it is that there are a lot more ways to shoot yourself in the foot with C++, but for some applications you really do want the low level memory control it gives you. Pointer arithmetic might be a bit tricky but I was quite glad to have it when I was writing an audio mixer and wanted to write to and merge several audio buffers on the fly.

      Simply put, when I want to do something that involves moving bits and bytes around C or C++ are great languages, but when I just want to make a basic application that works reliably Java is much easier to deal with.

    28. Re:"Java never mattered"? by oldhack · · Score: 1

      "Go ahead, mod me as flamebait! I'm used to it."

      Guys, don't be a dick. Mod this post "flamebait" like he asked.

      --
      Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
    29. Re:"Java never mattered"? by CastrTroy · · Score: 1

      Yeh, but then you'd have to discount Pascal, Delphi, and TSQL, simply because they use verbose syntax. The IDE inserts the End constructs anyway, so it's not like you even have to do any extra typing.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    30. Re:"Java never mattered"? by GleeBot · · Score: 1

      Yes, and lex/yacc are more powerful still! You can write whole new programming languages in them!

      That doesn't make them particularly well-suited for writing applications (unless that application happens to be a compiler). Ditto with C++.

      Don't take this the wrong way; I still make extensive use of C++. If you're doing system-level stuff, but want more safety than C provides, and the runtime overhead isn't a problem, then C++ is great. But it could stand to lose a lot of cruft. The syntax, in particular, has become incredibly baroque over time.

    31. Re:"Java never mattered"? by Reality+Master+101 · · Score: 1

      Running a huge JVM on an embedded device?

      A JVM doesn't have to be huge, it's only when you want Java to have half-way decent performance, along with all the security scanning, that you need all the extraneous crap. And you only need that when you want Java to compete with other languages in high performance applications. Java would be fine in low-demand things like, say, DVD players. Of course, you have to be careful with memory usage, as you do in all embedded applications.

      Keep in mind that a JVM is fundamentally a bytecode interpreter. It doesn't have to be radically complex, especially in a non-programmable device.

      --
      Sometimes it's best to just let stupid people be stupid.
    32. Re:"Java never mattered"? by cerelib · · Score: 3, Informative

      Unless things have changed in recent years, JSPs do get compiled, twice. First, they get compiled into Java Servlet objects, where your HTML lines get turned into print() calls. Then they get compiled into bytecode to be executed. Your server may hide this process from you, but that is what Tomcat did when I had to use it about 4 years ago.

    33. Re:"Java never mattered"? by Dragonslicer · · Score: 1

      JavaScript is a scripting language, whereas Java is a full-fledged programming language. There's no real difference between "scripting language" and "programming language". There might be categories of applications that are better suited for "scripting" languages or "programming" languages, but that's a very vague definition. JavaScript and Java are both Turing complete languages; any program that can be written in one can be written in the other.
    34. Re:"Java never mattered"? by Jezza · · Score: 1

      Heh, I like it.

      Of course, I don't agree at all, but it's nice to read it (as I do know what you're talking about). I do think that in 2008, solving **normal** business problems (whatever the hell that means) worrying about pointers and memory allocation seems to be a bit of an unnecessary distraction.

      But sure, it does rather depend - it's also true that leaning too hard on the automatic garbage collector can't help performance. I have seen code that allocates vast splashes of memory and the de-references it all in a tight loop, and you do have to think: "hmm is this a good idea, wouldn't it be better to think about what's going on?" But this isn't the worst sin, how many programs ask for vast numbers of database rows then allow the code to pick and choose what's actually needed rather than create a more defined query? All fine and dandy on the development box where the DB and the APP are on the same system - not so flippin' clever when you deploy with multiple application servers hitting the DB. Quite frankly, some of these noobs need to think about what they are leaning on.

    35. Re:"Java never mattered"? by Shade+of+Pyrrhus · · Score: 1
      Correct, it has not changed. The point I was getting at is that it works the same as Python - you write the code, and can modify it without recompiling yourself.

      Was in regards to gp's quote:

      realtime chanages to the code vs. compiling it over and over again
      In either case, performance is going to suffer if it's not precompiled to bytecode, but the ability's there.
    36. Re:"Java never mattered"? by Kjella · · Score: 1

      I'll just keep my C++, thank you very much, which nobody advocates these days, and everyone says is obsolete, too complicated, and inherently broken. I don't think anyone would have made C++ just the way it is, if they made it today. While obviously you can do anything in C++ as you can in any other Turing-complete language, there's several places where I think C++ requires you to walk the "straight and narrow" using design patterns, faking higher-level constructs and in general keeping very strict control on what you're doing. I don't mean you should make it safe as in children's scissors, but more like the difference between open machinery that might maim you if misstep a little and a modern factory plant. C++ gets *very* good results if you know what you're doing, but it is harder than it needs to be. I do mostly C++/Qt and the more Qt and less C++ I do, the happier I generally am...
      --
      Live today, because you never know what tomorrow brings
    37. Re:"Java never mattered"? by Bill,+Shooter+of+Bul · · Score: 1

      Actually, I did write that as && at first by habit, but then corrected it. Maybe I should have left it in.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    38. Re:"Java never mattered"? by jellomizer · · Score: 1

      Um you must think before you jump. "Java second cousin twice removed JavaScript" Think about this for a minute... Java and Javascript are not related like a second cousin twice removed. Where any simularites are probably just by one influencing the other. (like JavaScript tends to have Java Like (not exact or near compatible) languge.

      Yes I know Java is not Just Applets or Clints. There is a bunch of server stuff that it can do too. However my Point was on the server side apps espectilly custom made ones that you will not distribute to many clients (AKA Most applications) Java doesn't offer any advantages. However durring its Hayday back in the late 90's the big push was to use it for the Desktop to replace the applications (hense why people thought it was the best thing since sliced bread).

      As the point of the OP was that Java is no longer the darling it once was. And I pointed out why it wasn't. I didn't say it was Bad or couldn't be used for other things. Just the market it was tring to fill origionally didn't materilize like the hype expected.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    39. Re:"Java never mattered"? by Bill,+Shooter+of+Bul · · Score: 1

      Forgive me, If I implied that those are never necessary, or that its always a great idea to rewrite everything form the ground up. Of course, that's a recipe for disaster. I think they are over used, abused, and often not the right solution for the problem.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    40. Re:"Java never mattered"? by geekoid · · Score: 1

      If C++ is too complicated, please get out of software development, kthxbi.

      well, not YOU, clearly you don't find that to be true, but to anyone else who writes code and thinks that.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    41. Re:"Java never mattered"? by snoyberg · · Score: 1

      No, he wants to guarantee evaluation of both sides of the conditional (ie, he's avoiding short circuiting).

      --
      Thank God for evolution.
    42. Re:"Java never mattered"? by sjwest · · Score: 1

      Java was for a time a cultists language. Then those Java cultists got bored and moved to whatever next was on the 'hot things' list. The write once - exec anywhere is baloney - Microsoft decided to screw sun with there own jvm. and even now (ON A DEBIAN MACHINE) not ubuntu half the things on ./ freshmeat in java wont work without the sun java stuff and whatever the Sun marketing team our calling the jvm this week. Please remember sun fans and others thinking im trolling that the jvm from is not part of Debian. Yes some of the java tech is cool but its runtime implementation means it was flawed.

    43. Re:"Java never mattered"? by febuiles · · Score: 2, Informative

      No. JavaScript is a scripting language, whereas Java is a full-fledged programming language. Javascript is also a full fledged programming language, whatever that means, you can run it inside a JVM (Mozilla Rhino) or using any other engine like Spidermonkey, which means you can pretty much do the same things you can do in Java.

      I guess I should know by now to expect most people to not know what they're talking about when they post. Funny, eh? :)
    44. Re:"Java never mattered"? by chromatic · · Score: 1

      I have seen code that allocates vast splashes of memory and the de-references it all in a tight loop, and you do have to think: "hmm is this a good idea, wouldn't it be better to think about what's going on?"

      A decent garbage collector will handle that just fine -- better, often, than malloc/free.

    45. Re:"Java never mattered"? by PinkPanther · · Score: 1
      Not if (& = &&)

      Er...I mean ==

      --
      It's a simple matter of complex programming.
    46. Re:"Java never mattered"? by scubamage · · Score: 1

      Dear god, please, never ever touch ADA :)

    47. Re:"Java never mattered"? by Draek · · Score: 1

      Umm, no, us Ruby and Python fanboys are intelligent enough to recognize that our personal favorite languages won't ever be the dominant language in the industry. We just like to think that C++ will die a long, agonizing, and completely deserved death, and it's place will be filled by C from below and Java/C# from above, making the world a happier place.

      Or maybe I'm just an anti-C++ fanboy at heart, dunno really.

      --
      No problem is insoluble in all conceivable circumstances.
    48. Re:"Java never mattered"? by LWATCDR · · Score: 1

      "Are you nuts? Running a huge JVM on an embedded device?"
      You mean like my cell phone?
      Or this http://www.arcom.com/devkit-linux-gx533.htm
      Or this http://www.jstik.com/

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    49. Re:"Java never mattered"? by Jezza · · Score: 1

      Actually I'm sort of agreeing with you. But I do accept that blind faith in the automatic garbage collector isn't good, it stops people thinking about their algorithms. While garbage collectors are amazingly efficient, leaning on them too hard does nothing to promote performance. But as I suggest, there are many other things you can do to hurt performance that have a much bigger impact.

    50. Re:"Java never mattered"? by Jezza · · Score: 1

      Not sure it takes "a real mind", just for most programmers solving the problem quickly (in human terms) is much more important than how much performance you can squeeze out of the hardware.

      (Basically computers have gotten cheaper, and programmers haven't)

      It's highly debatable if C++ is all that efficient, compared to ANSI C for example.

    51. Re:"Java never mattered"? by chromatic · · Score: 1

      I do accept that blind faith in the automatic garbage collector isn't good, it stops people thinking about their algorithms.

      I'm skeptical. Sure, not having to worry (mostly) about memory leaks and uninitialized pointers lets non-expert programmers get things done without having to go through really difficult reasoning about resource usage, but it lets non-expert programmers get things done. That seems like a benefit.

      You can argue -- and I might agree -- that having only mediocre programmers on a project is not a good idea. Yet I have confidence that any business which staffs an important project with only mediocre programmers would find other ways to fail if its programmers stumbled into the most brilliant code possible.

    52. Re:"Java never mattered"? by fredrik70 · · Score: 1

      it was a bit-wise and, of course!

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    53. Re:"Java never mattered"? by fredrik70 · · Score: 1


      well, you could tell the GC to collect, bit like carpet bombing I suppose...

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    54. Re:"Java never mattered"? by prockcore · · Score: 1

      Java suffers from it's history of being ridiculously memory hungry and currently suffers for it's confusing varients.

      There's J2SE, J2EE, J2ME, MIDP, MIDP2, CDC, CLDC, JSP, EJB, J2WTF

      We're a far cry from "write once, run everywhere". Try running a midlet on OSX.

    55. Re:"Java never mattered"? by smellotron · · Score: 1

      I do think that in 2008, solving **normal** business problems (whatever the hell that means) worrying about pointers and memory allocation seems to be a bit of an unnecessary distraction.

      I know you put "normal" in double-asterisks, but I still think it's not obvious enough. Where I work, it is normal to be worrying about memory allocations (pointers not so much... if you actually have to worry about the pointers you wouldn't have been hired). It's still a distraction—but then, so is application-level access control, authentication, network security, and all of that other stuff that may be necessary for the business to succeed.

      In other news, one of my friends works with Ruby on Rails. He loves it, but every once in a while, he's the guru who has to replace a ruby script with a raw SQL script and maybe a few stored procedures (because some 10-second queries would take hours in RoR-land). It always pays to know your tools inside and out.

    56. Re:"Java never mattered"? by smellotron · · Score: 1

      No, he means

      typedef static_if_<
          is_practical<language::procedural<cee_plus_plus_tag<1> >::lang_type>::value,
          language::procedural<
              cee_plus_plus_tag<1>
          >::lang_type>::allocator<boost::pool_allocator, 1024>,
          empty_struct
      >
      my_heart;

    57. Re:"Java never mattered"? by smellotron · · Score: 1

      No. JavaScript is a scripting language, whereas Java is a full-fledged programming language [emphasis mine].

      I understand the differences between Java and JavaScript. I don't understand the difference between a scripting language and a "full-fledged" programming language, and I usually find that false dichotomy used as a weasel phrase. What did you actually mean when you said that?

    58. Re:"Java never mattered"? by Alpha830RulZ · · Score: 1

      Java doesn't offer any advantages.

      I do mostly server side stuff. I find it pretty handy that my programs run without recompilation or modification between Windows and Linux. I find the JSP web development model productive. The cost of the language and Eclipse or NetBeans environments is very appealing.

      I'd call those advantages. Certainly other language choices also have such advantages - I'm not saying that java is the only rational choice. But it's a very solid one.

      --
      I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
    59. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      Are you trying to sound genious or something?

      JavaScript is more than Java (it has the Script component too, you insensitive clod). Clearly more programs can be written in JavaScript.

    60. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      I'll just keep my C++, thank you very much, which nobody advocates these days, and everyone says is obsolete, too complicated, and inherently broken. Go ahead, mod me as flamebait! I'm used to it.

      I was going to, but my browser crashed. I wonder what language it's written in...

    61. Re:"Java never mattered"? by m50d · · Score: 1
      No. JavaScript is a scripting language, whereas Java is a full-fledged programming language.

      Please. That's not a real distinction. I can write perfectly good, full-fledged programs in JavaScript. And more easily than I can in Java.

      --
      I am trolling
    62. Re:"Java never mattered"? by John+Jamieson · · Score: 1

      "It's highly debatable if C++ is all that efficient, compared to ANSI C for example."

      It depends what you are doing, and what efficiencies you are talking about.
      If you are talking about scratching out every spare cycle out of the computer, yes, it is easier to be efficient in C.
      If the efficiency is programmer time and it is a huge project, generics and objects done properly can be irreplaceable.

    63. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      The "C is Efficient" Language Fallacy
      http://scienceblogs.com/goodmath/2006/11/the_c_is_efficient_language_fa.php

      It's the language of choice for writing a kernel and drivers, and even that much is easily debatable.

      The real reason it manages to stick around is that it's the lingua franca of 3rd party libraries.

    64. Re:"Java never mattered"? by Ash+Vince · · Score: 1

      Yeh, but then you'd have to discount Pascal, Delphi, and TSQL, simply because they use verbose syntax.

      Good idea.

      Pascal was a teaching language not actually designed for commercial development, but to teach people to program.

      Delphi is based on Pascal.

      TSQL is designed to encourage you to use the full development tools (IE - Visual Studio and Query Mangler) in order to construct statements rather than write them by hand.

      --
      I dont read /. to RTFA, I read /. to offend people in ignorance.
    65. Re:"Java never mattered"? by ckaminski · · Score: 1

      I'm with you wrt C++, though I am predominantly Java these days... I've been keeping up with the new standardization effort - I like the idea of repurposing auto to replace the nastiness that is template variable declaration.

    66. Re:"Java never mattered"? by ckaminski · · Score: 1

      Curious... When Java and C# are built on the syntax that C++ created you call it baroque? Care to give some opinions/examples?

    67. Re:"Java never mattered"? by LizardKing · · Score: 1

      it [C++] remains the language of choice for real complex scientific and engineering challenges

      Really? The scientists I've worked with use Fortran and occasionally Perl. The engineers all used C and Java - even if they compiled with a C++ compiler, they were actually writing C rather than using C++ features.

    68. Re:"Java never mattered"? by ckaminski · · Score: 1

      Back in the olden days you couldn't download a software package lickety-split like you can today... Entire 680MB CDs in less than 10 minutes on broadband... That's why the software shelves devolved to mostly quickbooks, turbotax, and video games.

    69. Re:"Java never mattered"? by Shotgun · · Score: 1

      That's because the rabid Java supporters got jobs.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    70. Re:"Java never mattered"? by Anonymous Coward · · Score: 0

      Nope. He was only referring to the bits.

  6. surely that is a little harsh by Presto+Vivace · · Score: 3, Insightful

    Since Java itself never mattered except to sell books, I still don't see why opening it matters. For a system that does not matter except to sell books, it sure has a large install base.

    1. Re:surely that is a little harsh by maestro371 · · Score: 4, Insightful

      Taco's just being provocative. He's smarter than that.

    2. Re:surely that is a little harsh by Presto+Vivace · · Score: 0

      you're probably right.

    3. Re:surely that is a little harsh by Anonymous Coward · · Score: 0

      I've met him. I've worked with him. I've seen slashcode before it was rewritten and cleaned up.

      Malda is a nice enough guy, but he can't code for shit and his understanding of compilers, languages, etc is somewhat pathetic.

    4. Re:surely that is a little harsh by orasio · · Score: 1

      But we like him anyways!

    5. Re:surely that is a little harsh by theelectron · · Score: 4, Insightful

      What, you mean like a troll?

    6. Re:surely that is a little harsh by neuromancer23 · · Score: 1

      Of course Java doesn't matter. That's why it's on so many BILLIONS of devices including NASA missions to Mars.

    7. Re:surely that is a little harsh by Bogtha · · Score: 1

      No dynamic typing. Fewer libraries than Perl. Lame.

      --
      Bogtha Bogtha Bogtha
    8. Re:surely that is a little harsh by Presto+Vivace · · Score: 1

      Mars? Clearly Java users are a bunch of space cadets :)

    9. Re:surely that is a little harsh by jalet · · Score: 1

      > it sure has a large install base.

      and a large memory footprint.

      --
      Votez ecolo : Chiez dans l'urne !
    10. Re:surely that is a little harsh by Anonymous Coward · · Score: 0

      He could have been provocative without looking like troll.

    11. Re:surely that is a little harsh by chromatic · · Score: 1

      That's why it's on so many BILLIONS of devices including NASA missions to Mars.

      I just talked to a software guy at the JPL this morning. He said that the code on the Phoenix mission is all C. There's Java at ground control, but not on the spacecraft.

    12. Re:surely that is a little harsh by neuromancer23 · · Score: 1
    13. Re:surely that is a little harsh by kaffiene · · Score: 1

      You must be new around here.

    14. Re:surely that is a little harsh by Samah · · Score: 1

      Is it possible to moderate an article itself as +1 Troll? If not, can we get that option added please, sysadmins? :)

      --
      Homonyms are fun!
      You're driving your car, but they're riding their bikes there.
  7. Use debian? by merreborn · · Score: 4, Informative

    If you've ever wanted to run a Java app on a debian box, you know why this matters.

    The strictly FOSS distros have historically refused to include a Java package due to its non-Free license. There's some really good Java software out there, and without a pre-built java package, it was just that much harder to access them.

    1. Re:Use debian? by InlawBiker · · Score: 4, Interesting

      That is a good point. LAMP became a one-checkbox install because it's FOSS. LAMJ could easily have been. Except it's not a very catchy acronym.

      Personally I'd like to see LAPJ: Linux, Apache, Postgres, Java.

      Anyway, love it or hate it, Java has reached the critical mass to be around for a long time.

    2. Re:Use debian? by Anonymous Coward · · Score: 1, Funny

      There were some really good programmers out there which happened to program their useful app in a crap language for a crap platform because they believed the hype. Luckily nobody is using Java outside of the corporate world anymore.

    3. Re:Use debian? by Darkness404 · · Score: 1

      Though, you are forgetting Python. While Java is similar-ish to Python, Python fills a niche that is needed. A language that is easy to write, understand and is cross-platform something like a better VB.... Well if VB was easy to understand.

      --
      Taxation is legalized theft, no more, no less.
    4. Re:Use debian? by vux984 · · Score: 1


      That is a good point. LAMP became a one-checkbox install because it's FOSS. LAMJ could easily have been. Except it's not a very catchy acronym.

      Probably be something like LJAM (el jam)

    5. Re:Use debian? by Deagol · · Score: 1
      Tell me about it -- what a mess! I've never understood why us FreeBSD users have to jump through a half-dozen flaming hoops whenever java needs to be installed from the ports tree. It's such a pain in the ass that I avoid Java apps altogether, since you just can't set BATCH=YES and expect the ports to get installed. Instead, you're fed a bunch of URLs and told to fetch the files manually, and then restart your build. (BTW, do Gentoo users suffer this idiocy as well?) I think the *only* app I'm willing to put up with is Open Office, which requires Java (at least for the build. Things like FreeNET, Limewire, etc. I just never bother with due to the crap licensing restrictions Java is still stuck with.

      I sincerely hope a fully open license will help in this regard.

    6. Re:Use debian? by Diomedes01 · · Score: 1

      Though, you are forgetting Python. While Java is similar-ish to Python, Python fills a niche that is needed. A language that is easy to write, understand and is cross-platform something like a better VB.... Well if VB was easy to understand.

      I should probably get over it, but as much as I've tried to warm up to Python, I have never been able to... I absolutely despise its use of whitespace/indentation to indicate scope. I'm sure it was a well-intentioned rule set forth to make everyone's code legible, but it has kept me away from any heavy use of the language.

      --
      "To hope's end I rode and to heart's breaking: Now for wrath, now for ruin and a red nightfall!"
    7. Re:Use debian? by larry+bagina · · Score: 2, Funny

      Java, Apache, Postgres, Solaris?

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    8. Re:Use debian? by tepples · · Score: 1

      Personally I'd like to see LAPJ: Linux, Apache, Postgres, Java. If Asians weren't so gung-ho about Ruby, would we see JAP (Java + Apache + PostgreSQL)?
    9. Re:Use debian? by teh+kurisu · · Score: 1

      BTW, do Gentoo users suffer this idiocy as well?

      When I last used Gentoo, yes. Although it would default to the Blackdown JDK, which didn't require such idiocy.

    10. Re:Use debian? by CynicTheHedgehog · · Score: 1

      Oh the acronyms get uglier than that :) RedHat Enterprise Development Studio (or somesuch) is LJPJE, an integrated blend of Linux, JBoss, Postgres, and Java (JSF + Seam + JBPM), and Eclipse. Great stack but not quite as catchy as LAMP. (Even for "Apache" it would be Tomcat, which still lends to an over-abundance of consonants: LTPJE).

      Open source Java is fantastic news for anyone competing with Oracle (which has their own bastardization of Java) and Microsoft/.NET.

    11. Re:Use debian? by Anonymous Coward · · Score: 0

      but C# *is* Java, only with all the vendor-specific developer lock-in loveliness that makes Mr Ballmer hug his pillow at night dreaming of global domination.

      If OSS Java is a good thing, then I expect to see a lot more work done in various parts of it - especially a practical, working GUI system to compete with WPF and a lot more innovative stuff to persuade devs to leave .NET behind and embrace more cross-platform tools.

    12. Re:Use debian? by bigstrat2003 · · Score: 1

      "Because the debian guys are retarded and refuse to include useful software on the basis of license" isn't exactly a compelling reason for the importance of this event. It should be significant in its own regard, not because it helps idiots continue being idiotic.

      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    13. Re:Use debian? by Thyrsus · · Score: 1

      Amen. The time sheet program my employer chose requires the Sun Java; it would probably work with IcedTea, but the version check isn't going to let me find out. I'm not supposed to be doing my time sheet under Linux, anyway.

    14. Re:Use debian? by incripshin · · Score: 1

      It sucks in OpenBSD, too. It's no fun building it since it requires you to find all the files off of four different websites, install kaffe (itself taking a long time), and then wait through the lengthy build. That's for 1.5. If you want to install 1.6, you need 1.5 installed to compile it. Pre-built packages and more liberal licensing would be a good thing. There are probably some people or companies out there who aren't using BSD because of the lack of Java support.

      I also use Gentoo, and on older versions we had to get the files manually. Now only the dated jdk-1.4 requires you to find the files manually.

    15. Re:Use debian? by flibuste · · Score: 1

      If you've ever wanted to run a Java app on a debian box, you know why this matters.

      Your first sentence sums it up. Some comments from some editors and other posters are really idiotic, I'm glad someone sees the real thing.
    16. Re:Use debian? by hidden · · Score: 1

      Ahh...you DO know about the non-free repository, right?
      There are quite nice packages of sun-java in there...

    17. Re:Use debian? by Sentry21 · · Score: 1

      LAMJ could easily have been. Except it's not a very catchy acronym JAML is a little better, though it sounds like some crappy Web 2.0 'We're gonna change the world by jumping on the bandwagon' website or some kind of long-forgotten W3C specification.
    18. Re:Use debian? by Anonymous Coward · · Score: 0

      "it was just that much harder to access them."

      You're kidding. Download one file, run it and it is installed. If you can't do that, you shouldn't be using Debian.

    19. Re:Use debian? by ttfkam · · Score: 1

      God forbid that someone's code should be readable! Perish the thought! Everyone should code in Perl; it's like nuking readability from orbit -- the only way to be sure.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    20. Re:Use debian? by Diomedes01 · · Score: 1

      There are plenty of ways to ensure readable code without enforcing it with a specific indentation scheme built into the language syntax. I am all about legible code, but I have a philosophical problem with enforcing it the way that Python does.

      --
      "To hope's end I rode and to heart's breaking: Now for wrath, now for ruin and a red nightfall!"
    21. Re:Use debian? by dmbasso · · Score: 1

      When I was a C++ addict I had the same opinion about Python's indentation. After I started messing with Blender and its scripts, I got over it, and now I just absolutely love Python.

      The signal (real code) / noise (extra syntax, e.g. '{}') ratio is much higher in Python.

      --
      `echo $[0x853204FA81]|tr 0-9 ionbsdeaml`@gmail.com
    22. Re:Use debian? by dmbasso · · Score: 1

      I heard Microsoft will start offering an extended version of a FOSS suite, it will be called Ruby-Apache-Postgres-Extended. It seems the technology is already in use, but the customers aren't noticing to be subject of it.

      --
      `echo $[0x853204FA81]|tr 0-9 ionbsdeaml`@gmail.com
    23. Re:Use debian? by himself · · Score: 1

      InLawBiker wrote:
      >
      > Personally I'd like to see LAPJ: Linux, Apache, Postgres, Java.
      >

            Well, Sun wants you to use the SAMP stack. But if you swap in Java, then it's SAMJ. Pronounced, presumably, like "sammich." But all free, don't forget. Mmmm-mmmm, free sammiches!

            Hey, I wonder what's in the snack machine...?

    24. Re:Use debian? by Anonymous Coward · · Score: 0

      LAMJ could easily have been. Except it's not a very catchy acronym.

      Much, much worse. In the Java stack Apache would be replaced by Tomcat, effectively killing last vowel in acronym.
    25. Re:Use debian? by Anonymous Coward · · Score: 0

      Personally I'd like to see LAPJ: Linux, Apache, Postgres, Java.

      Why include Apache? Tomcat's faster at serving up static content. :)
    26. Re:Use debian? by ungerware · · Score: 1

      You wouldn't use Apache, you'd use one of the many OSS Java app servers (Glassfish, JBoss, Resin, Geronimo).

      --

      -----
      Kvetch is Yiddish for "throw an exception" --Dr. Ron Cytron
    27. Re:Use debian? by SatanicPuppy · · Score: 1

      Meh. If you were really using Java, and you were using an OS that included gcj or some other free java compiler/interpreter, the first thing you did was rip that crap out of the OS and replace it with "real" Java, which has always been available (for the distros I use), at least as a binary, and was much less likely to have unexpected behaviors...I always did the same with Windows as well.

      Having a distro come with "real" java and pre-installed Tomcat is a big deal for people who've had to set up that crap since the dawn of time (or you know, a decade or so).

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    28. Re:Use debian? by SatanicPuppy · · Score: 1

      It'd be LTJM, which is even worse (T for "Tomcat", not Apache). I guess you could throw in Ant to get a vowel, but you're still screwed in yer acronym, because you have too few vowels.

      I guess if Oracle goes insane at opensources their database, you could do "JOLTA"; that's about as good as it gets.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    29. Re:Use debian? by aurasdoom · · Score: 1

      Actually, java runs on Tomcat

    30. Re:Use debian? by Anonymous Coward · · Score: 0

      Cobol has reached a critical mass to be around for a long time... a long time ago. I'm sure we're all eagerly awaiting the opensourcing of cobol. Also may cobol be with you.

    31. Re:Use debian? by Anonymous Coward · · Score: 0

      You'd likely need some kind of app server with that (Tomcat, JBoss, or whatever). Still, they're all free as well. Should make it a hell of a lot easier to install a Java-based web server.

      Now, all we need is a framework that makes web apps as easy to deploy as they are in, say, PHP...

    32. Re:Use debian? by Anonymous Coward · · Score: 0

      LJAP

      latin japanese perhaps
      damn those half japansese girls, do it to me everytime

      p.s. /. - this new ajax comment system really sux.

    33. Re:Use debian? by petermgreen · · Score: 1

      It's not just the debian guys, many other distros have policies against including non-free software in thier main repositries and thier default installs. This is bad for java because it means that the default java on many linux distros is a relatively slow and highly incomplete clone.

      Also there are practical issues. Not so long ago a newer version of one of the X libraries got less tollerant of cerain misbehaviour. This broke sun java, it was possible to hack the binaries so they would run but the license distros got java under forbid them from doing this for thier users.

      Eventually sun released an update to java 6 fixing the issue but it took quite a long time. Afaict java 5 is still not fixed.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    34. Re:Use debian? by lenmaster · · Score: 1

      Go have a look at mono (http://mono-project.org).

    35. Re:Use debian? by smellotron · · Score: 1

      whoosh...

    36. Re:Use debian? by Anonymous Coward · · Score: 0

      IcedTea/OpenJDK still isn't in Debian, keeps getting rejected for some reason.

    37. Re:Use debian? by SenseiLeNoir · · Score: 1

      Even for "Apache" it would be Tomcat..............

      As the individual names are: "Apache HTTPD" and "Apache Tomcat", I think you can still use the A for Apache :)

      --
      Have a nice day!
    38. Re:Use debian? by SenseiLeNoir · · Score: 1

      Tomcat is only "faster" if you have the later versions (I think tomcat 5.0 or above) and you enable AJP which I don't believe is enabled by default.

      --
      Have a nice day!
    39. Re:Use debian? by ChunderDownunder · · Score: 1

      Sure, but non-free is not going to increase mindshare.

      The goal is for Java to be a 1st class citizen. That means getting in the main repository so it'll be included on the default ISO.

    40. Re:Use debian? by Anonymous Coward · · Score: 0

      If you've ever wanted to run a Java app on a debian box, you know why this matters.

      The strictly FOSS distros have historically refused to include a Java package due to its non-Free license. There's some really good Java software out there, and without a pre-built java package, it was just that much harder to access them.

      Nope I don't and won't use Debian.

    41. Re:Use debian? by Anonymous Coward · · Score: 0

      If you've ever wanted to run a Java app on a debian box, you know why this matters.

      The strictly FOSS distros have historically refused to include a Java package due to its non-Free license. There's some really good Java software out there, and without a pre-built java package, it was just that much harder to access them.

      Free as in speech software may pay your mortgage so Debian may be good for you. But many of us pay our bills using free as in beer software, making Debian irrelevant.

    42. Re:Use debian? by Anonymous Coward · · Score: 0

      If you've ever wanted to run a Java app on a debian box, you know why this matters.

      The strictly FOSS distros have historically refused to include a Java package due to its non-Free license. There's some really good Java software out there, and without a pre-built java package, it was just that much harder to access them.

      That's the price you pay for zealotry. It's a "feature" of GNU/Linux that you sacrifice productivity for "freedom."

  8. Java doesn't matter by ShieldW0lf · · Score: 5, Insightful

    I guess OpenOffice.org doesn't matter either then...

    --
    -1 Uncomfortable Truth
    1. Re:Java doesn't matter by legoman666 · · Score: 1

      Indeed, it is slow and bloated.

    2. Re:Java doesn't matter by Gewalt · · Score: 1

      +1 Uncomfortable Truth

      --
      Modding Trolls +1 inciteful since 1999
    3. Re:Java doesn't matter by Anonymous Coward · · Score: 0

      Nor Adobe Flex which all the backend/compiler tools are Java.

    4. Re:Java doesn't matter by m50d · · Score: 1

      Damn straight it doesn't. It's bloated and horrible, has an utterly inpenetrable codebase which means it's never going to gain the real advantages of open source, and distracts attention and funding from far better projects like koffice.

      --
      I am trolling
  9. Programmers opinions on the language? by jacks+smirking+reven · · Score: 0, Troll

    I am not a programmer myself, but i know a bunch, and just about every one I know or have talked languages with systematically abhor Java (the words slow and bloated come up often) and most apps written in Java I have used have felt half-hearted. Other then the cross-platform capability are there real advantages to it?

    1. Re:Programmers opinions on the language? by LWATCDR · · Score: 5, Insightful

      I have written a few applications in Java.
      I actually like it. If you want to write a database driven application that is also multi threaded I think it is just great.
      If you need to be multi-platform it is the best solution that I have found. QT is close also.
      The speed argument is old and should be tossed. Swing isn't slow or nasty anymore and is pretty speedy. SWT is also pretty nice.
      Try Jedit, Netbeans, or Eclipse to see what a nice java application can feel like.
      If you haven't used the latest version of Java I suggest you try it.

      I have even found good uses for java appletts. Yes I know they got a bad name because way to many idiots "Microsoft I am looking right at you" used them for stupid things like hover buttons.

      Java is a a good free as in beer and free now free as in GPL RAD system.

      As far as it not mattering? Well a lot of people make a living writing Java. I just saw a Story on slashdot about a guy running java on a Cluster to do modeling.
      As far as Java being to big for anybody to use it for anything practical...
      Well JEdit, Netbeans, Eclipse, OpenOffice, and thousands of cell phone programs all say BALONEY.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    2. Re:Programmers opinions on the language? by Anonymous Coward · · Score: 0

      No. Most implementations of Java aren't actually cross platform.

      You end up having to tweak your code for a particular implementation to get it to work, and then it's no longer cross platform.

      So you get stuck with all the downsides of overhead and bloat, and none of the promised benefit of crossplatform-ness. Sure there are some other nice features, but seriously, write-once-run-anywhere is supposed to be the biggest feature of Java, and that doesn't ever pan out.

      No thanks.

    3. Re:Programmers opinions on the language? by Rary · · Score: 2, Insightful

      ...(the words slow and bloated come up often) and most apps written in Java I have used have felt half-hearted.

      Actually, I would guess that most apps written in Java that you've used have been quite responsive, but you weren't aware that you were using a Java app. This is because most Java apps that people use are server-side apps (eBay springs immediately to mind).

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    4. Re:Programmers opinions on the language? by goltzc · · Score: 1

      This is a real common argument people make, however it's just not true anymore. There was a time when Java apsp were slow but improvements within the language and JVM have made its performance comparable to compiled C. As far as bloat goes, a poorly configured Java application or application container in the case of web apps will certainly make Java apps appear bloated but that's only because you allocate the JVM a certain amount of memory and Java will use every last byte you give it if it needs to. On the other side of that if you force a Java application to run very lean on memory the garbage collector will do a pretty impressive job keeping your application running efficiently. That's not to say that a C/C++ doesn't give the developer a better ability to optimize performance and footprint.

      That being said, I don't think there is such a thing as the perfect language. They all need to be thought of as tools in a programmers tool box where you choose the right tool for the job.

      --
      Our bugs are smarter than your test scripts.
    5. Re:Programmers opinions on the language? by arevos · · Score: 1

      I am not a programmer myself, but i know a bunch, and just about every one I know or have talked languages with systematically abhor Java (the words slow and bloated come up often) I dislike Java, but the JVM isn't slow. On the contrary, it's the fastest VM I can think of, and is pretty close to C++ in terms of performance.
    6. Re:Programmers opinions on the language? by lindi · · Score: 2, Informative

      Remember that Sun did not free their java applet plugin. Classpath/Icedtea folks are writing a replacement but last time I checked it lacked e.g. liveconnect support so I could not login to my bank. This means that java applets are still not completely usable with free software.

    7. Re:Programmers opinions on the language? by Dan+Morenus · · Score: 1

      The banking industry is very sensitive about the software it allows on its computers due to security considerations. At least one large bank completely configures its PCs from a master CD-ROM, and then locks them down so tight they can't blink. Want to load an Active-X control or install a new executable? Fugeddaboutit! In such an environment, a "zero-footprint" application can be very attractive. If your software is packaged as a web portal with advanced user interaction done in an untrusted Java applet, then provided they have a usable JRE in their master image you can sell your software as not requiring any IT action at the client side. In 2003, when I started my current job, .NET was just getting started and AJAX wasn't really big either; I paid the mortgage for 4 years writing a Java applet that's in use by plenty of major and minor banks around the globe.

      BTW, I wrote the applet in Java 1.1.7 so that it could run both on OS-2/Netscape and Windows/IE; one of our largest customers was still using OS/2 throughout its organization until 2004 or so.

      I enjoy coding in both Java and C#/.NET; at home I use Java since it's free and there are great free development tools to use with it; at work I program in both environments.

      --
      -- Conserve binary trees; recycle your email. --
    8. Re:Programmers opinions on the language? by Anonymous Coward · · Score: 2, Informative
      Bullshit.

      I work for hotels.com. The same build script and code is used on Windows, OS X, and Solaris. No changes needed. At all.

    9. Re:Programmers opinions on the language? by The+End+Of+Days · · Score: 1

      You're only 5 years late with this criticism. You anti-Java trolls are catching up to the present!

    10. Re:Programmers opinions on the language? by ljgshkg · · Score: 1

      If you talk about developing a UI though, no matter if you're talking about light client (web) or heavy client, I personally like .NET better.

    11. Re:Programmers opinions on the language? by LWATCDR · · Score: 1

      Does .Net run on Linux? Well sort of if your careful about what you use? The Mac?, BSD, Solaris?

      I have not messed with .NET and it might be pretty nice but does that make Java irrelevant?

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    12. Re:Programmers opinions on the language? by LWATCDR · · Score: 1

      BALONEY.
      I am running a java applet right now CPU is at 3%. That is with Firefox and Thunderbird. That is on a pretty old P4 so that is just not true.
      As to it being ugly. Not really. With Java 6 under Windows XP it is hard to tell the difference. So you speed with the assurance of someone that pretty much knows nothing.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    13. Re:Programmers opinions on the language? by ttfkam · · Score: 1

      I don't know jacks smirking reven, but I know people that do, and just about every one I have talked to systematically abhors the troll and affirms that there is the consumption of babies.

      But then, I don't listen to hearsay. There's a reasonable possibility that jacks smirking reven is a pretty nice person, and I'll reserve judgment for when we actually meet.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    14. Re:Programmers opinions on the language? by I+cant+believe+its+n · · Score: 1

      What kind of applications are you building? (it is an honest question, not out to get you)

      Have done quite a bit of coding in java since -99 I think, mostly on win and linux on the pc, but also some hobby coding for mobiles later on. Apart from having to know your libaries (when a certain feature was introduced) I have had no problems of this kind. I do remember waiting "forever" for the linux version to go beyond 1.1.8 though

      I've always felt that java was somehow ruined by version 1.5. Before that, although it may have lacked some nifty constructs, the basic syntax of the language always felt very coherent to me. If you look at the majority of the older API there was also a lot of thought going into how it was put together. ("Effective java", anyone?)

      Although I've tried quite a few languages, java and in particular the jvm is what I like. There are a few others languages that where eye openers, but they where not created to keep simple things simple and complex things possible. In addition, just looking at some jvm assembler code is a good learning experience and can teach you quite a bit about java in particular and processors in general.

      Instead of abandoning the jvm, how about getting your favourite language running on it instead?

      --
      She made the willows dance
    15. Re:Programmers opinions on the language? by lindi · · Score: 1

      Hmm? Perhaps you intended to reply to somebody else? I didn't say anything about cpu consumption.

    16. Re:Programmers opinions on the language? by arodland · · Score: 0

      I am not a programmer myself, but i know a bunch, and just about every one I know or have talked languages with systematically abhor Java (the words slow and bloated come up often) I dislike Java, but the JVM isn't slow. On the contrary, it's the fastest VM I can think of, and is pretty close to C++ in terms of performance. When did C++ get promoted to "not slow"? :)
    17. Re:Programmers opinions on the language? by LWATCDR · · Score: 1

      Nope I was replying to the AC. Just hit the Parent button on my post to see it.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    18. Re:Programmers opinions on the language? by Anonymous Coward · · Score: 0

      It's a well known fact that for snails, the notion of time is accelerated. Also, I bet that your "running an applet" means having it currently sitting idle, or that you have 2Gb of RAM to throw at it. When everyone says that Java is slow and Linux is slow, it's because it's so. Heck! I can even predict when something has been coded in Java just by looking at its sluggishness.

    19. Re:Programmers opinions on the language? by ljgshkg · · Score: 1

      Well, if you talk in terms of OS, then the option is obviously dependent on what servers you have access to. UI though, including the web side, I find Java much less handy (or overly complex sometimes). But then I haven't use Java for UI for a while now. May be usability have improved since the introduction of JavaServer Face matured, or may be they now have better development tools. And, I never said Java is irrelevant in my last post. I use jEdit, Azureus, OpenOffice etc., and had also written some simple tools in Java. So I definitely won't say it's irrelevant. I'm only saying that I prefer .NET when programming UI, according to my own experience.

    20. Re:Programmers opinions on the language? by Anonymous Coward · · Score: 0

      I have tried Jedit and Eclipse and I have never seen slower, uglier, heavier and more bloated apps in my life expcept maybe OpenOffice.

  10. Duhnanas. by Aphoxema · · Score: 1

    It's not about practicality or relevance, it's about Sun setting an example and living up to saying what it would do.

    --
    "Most people, I think, don't even know what a rootkit is, so why should they care about it?"
  11. If elephants could fly... by OpenSourced · · Score: 4, Insightful

    if Java really were released today, brand-new, would it be a tool you'd choose

    If Windows were released today, brand-new, would it be a tool you'd choose?

    Who cares. It's not today that it's released, and the importance of availability, mind-share and already developed applications around it, gives it a clear importance, even if you have better hammers for your particular nail.

    --
    Rome taught me patience and assiduous application to detail. Virtues which temper the boldness of great, general views.
  12. Ruby? by Anonymous Coward · · Score: 0

    ...the only place I ever, ever see Ruby mentioned is on Slashdot.

    Surely it would be better to talk about the real world, ie php. That is, if we're talking about relevance and market share and, you know, reality.

  13. If you want a job developing stuff by Colin+Smith · · Score: 1

    You need to know Java.

    It's that simple. It doesn't seem to matter that the typical Java app is N times larger than it's c++ counterpart or that you need a 64bit box with NGb of RAM to make it run acceptably. Corporate IT are basically only interested in hiring Java developers.

     

    --
    Deleted
    1. Re:If you want a job developing stuff by BlueZombie · · Score: 2, Interesting

      Gosh, all of us .Net developers must be mass hallucinating.

    2. Re:If you want a job developing stuff by Evil+Poot+Cat · · Score: 1

      Parent post is true; "building and successfully pitching IT budgets" is just as much a use (if not more) than selling books.

    3. Re:If you want a job developing stuff by truthsearch · · Score: 1

      Really? I've been programming for corporate IT for 13+ years and I've only played with Java. I've never required it before interviewing other programmers, either.

    4. Re:If you want a job developing stuff by GeckoX · · Score: 2, Insightful

      Yes, obviously, because everyone I know, including myself, has only ever had dev jobs using Java.

      Er, not.

      That's just stupid. Likely you've been working with Java in your experience, but I know tons of people that have never touched it at their place of work, including myself.

      Further, at this point, it doesn't matter that I don't 'know' Java. I do 'know' half a dozen languages and if I should ever come across a job that I can't get _because_ I don't 'know' Java, then I've simply vetted a company that I know I do not want to work for.

      Languages are tools, and once you know how to use a number of tools it becomes much easier to pick up new tools.

      --
      No Comment.
    5. Re:If you want a job developing stuff by Jellybob · · Score: 1

      Well, I'd better tell the hundred odd people on my floor to pack up and go home then.

    6. Re:If you want a job developing stuff by Azar · · Score: 2, Informative

      You need to know Java...Corporate IT are basically only interested in hiring Java developers.

      That's exactly what I thought 3 years ago when I applied for my current job. I had studied up on my java, bought various books to hone my skills (java is one of my weaker languages), tested my knowledge with free online tests, considered becoming a "Sun Certified Java Developer", etc, etc.

      Then I interviewed.

      They hired me with a salary that was 27% more than what I had been asking. But not to program in Java. They hired me because I was very strong in C and Perl of which they had a very large code base and fewer developers to maintain (and expand) it. We process credit card transactions and all of our backend code is in C, with the less critical stuff in Perl. Java runs a lot of the web services and a number of front-ends for customers, but it isn't difficult to find a good Java developer. Finding a knowledgeable C developer is becoming harder and harder.

      I don't mean to say everyone should rush out and (re)learn C and try to find a job using it, but you can make just as good of a living not programming in Java as you can programming in it. Java is definitely a good tool to have on your belt, but don't confuse it with being the tool.

    7. Re:If you want a job developing stuff by D+Ninja · · Score: 2, Interesting

      Really? I've been programming for corporate IT for 13+ years and I've only played with Java. I've never required it before interviewing other programmers, either. ...which means...absolutely nothing. The fact that you've been in IT for 13+ years (arguably when Java was just starting) means your skill set is in other languages. Thus, your resume would reflect that. Thus, your job searches would reflect that.


      Thus, you have never needed Java. However, for developers who are new to the industry, it is difficult to avoid Java.

    8. Re:If you want a job developing stuff by Colin+Smith · · Score: 2, Informative

      Why would you aim for 1/3 of the market when you can aim for 2/3?

      http://www.google.com/trends?q=java+developers%2C+.Net+developers&ctab=0&geo=all&date=ytd&sort=0

       

      --
      Deleted
    9. Re:If you want a job developing stuff by Reality+Master+101 · · Score: 1

      Further, at this point, it doesn't matter that I don't 'know' Java. I do 'know' half a dozen languages and if I should ever come across a job that I can't get _because_ I don't 'know' Java, then I've simply vetted a company that I know I do not want to work for.

      To be honest with you, I don't think you have as much experience as you think you do. You seem to think learning a new language is a matter of doing a "keyword substitution". It's not. It's about learning the idioms of the language, and particularly in the case of Java, the libraries. Becoming a true expert in a language takes years of everyday usage.

      What brought this really home to me was after I had been programming for years in C, I hung out in the comp.lang.c newsgroup for awhile, and I realized how little I knew about the subtleties of the language definition -- which *matter*. I can almost guarantee that with your attitude, you don't have a clue about C, and I bet you think you're an expert in it (or would be after reading a book).

      --
      Sometimes it's best to just let stupid people be stupid.
    10. Re:If you want a job developing stuff by Anonymous Coward · · Score: 0

      Embittered COBOL programmer?

    11. Re:If you want a job developing stuff by ady1 · · Score: 1

      What made you think that he is even interested in being A Master of C?

      Believe it or not, a lot of us are not remotely interested in learning languages any further then getting a job done. Computer languages, like spoken languages are there for only one purpose: Getting a job done. Regardless of how warm and fuzzy (and proud) you feel because you are A Master, a lot of us have more important things to do in life then specializing in languages, which on itself, come and go as new technologies are developed.

      Of course, it does make sense to specialize in a language if you are a language instructor. Other than that, it doesn't.

    12. Re:If you want a job developing stuff by Mongoose+Disciple · · Score: 2, Insightful

      Why would you aim for 1/3 of the market when you can aim for 2/3?

      Because, on average, I enjoy my job a lot more when I'm doing .NET work. I tend to spend a lot less time dicking around with XML files and the environment, a lot less time fighting my IDE (disclaimer, my recent experience is mostly with Eclipse and I expect the alternatives would be better, for me) and a lot more time writing code that solves the problem at hand. I understand that not everyone will have the same preferences or experience, but for me, that's much more satisfying.

      I only need one job at a time, it might as well be one I like.

      (I've got about double the Java experience, so it's not like I can't go that way if I need/want to as well.)

    13. Re:If you want a job developing stuff by Reality+Master+101 · · Score: 1

      What made you think that he is even interested in being A Master of C?

      The point isn't the specific language, that's just an example.

      Believe it or not, a lot of us are not remotely interested in learning languages any further then getting a job done.

      Yes, but you fail to understand that "getting the job done" is not just banging out code to perform some function. Most of the expense of software development is in future bug fixes, enhancements, and being maintainable by future developers. That means understanding the language sufficiently to use the features effectively, as well as being able to modify other's code that may use any and all of the features and libraries.

      Of course, it does make sense to specialize in a language if you are a language instructor. Other than that, it doesn't.

      No one talked of specialization. This is about basic competence and professionalism. Unfortunately, I've worked with too many "bit slingers" such as yourself who come from the "poke and prod until it works" school, and then your crap has to be rewritten by the professionals.

      Heck, I just talked to a company recently who had a web application developed using your methods. Because the idiot developer focused on "just making it work" and didn't understand at all how the web worked, it has to be totally thrown away. It's a perfect example of someone who clearly just experimented with stuff and didn't bother to learn how things worked to any depth.

      --
      Sometimes it's best to just let stupid people be stupid.
    14. Re:If you want a job developing stuff by shoor · · Score: 1

      Well now hold on a minute. Becoming A Master Of A Language is more than just an intellectual exercise. Your work is better: written more quickly, usually running more efficiently (sometimes that still matters), usually written in a more terse way (which might be harder for newbies to figure out, but not for other Masters, and fewer lines of code usually means fewer bugs). In short, easier to maintain.

      However, becoming a master means serving an apprenticeship and yes, languages do go out of fashion. If you're paid well enough during the apprenticeship fine, but making a decision about which languages/jobs to pursue can be tricky.

      --
      In theory, theory and practice are the same; in practice they're different. (Yogi Berra & A. Einstein)
    15. Re:If you want a job developing stuff by truthsearch · · Score: 1

      I don't understand. I currently use mostly PHP and Python. I don't happen to use the languages which were in my original skillset 13 years go.

      GP stated "If you want a job you need to know Java" and "Corporate IT are basically only interested in hiring Java developers." Which doesn't match my experiences. "Developers new to the industry" will need whatever the industry is using. And many positions require no Java at all. There are many positions in finance that need C++, many in web development that need PHP, plenty that want .NET, etc. Knowing Java may help round out one's knowledge, but it's often not a requirement.

    16. Re:If you want a job developing stuff by geekoid · · Score: 1

      Not true. Stop it. Stop lying.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    17. Re:If you want a job developing stuff by GeckoX · · Score: 1

      Nice assumptions you make there, and yet you know nothing about me or my experience and abilities. But carry on with your rant :)

      --
      No Comment.
    18. Re:If you want a job developing stuff by Reality+Master+101 · · Score: 1

      and yet you know nothing about me or my experience and abilities

      I do know something about your experience and abilities, based on your post. You made the claims, and only someone who hasn't done very significant projects could possibly believe what you posted. Sorry. Nothing personal -- you just have a very naive viewpoint.

      --
      Sometimes it's best to just let stupid people be stupid.
    19. Re:If you want a job developing stuff by I+cant+believe+its+n · · Score: 1

      Having worked as a language instructor (java) I do agree that it does make sense to specialize. However, I think it makes sense to specialize regardless since concepts that you learn at great detail in one language can be found in most other languages as well.

      Example: I was asked to help out with a project that was bogged down. It was a .NET web application with VB and C#. After a few days I had questions that the guy who hade been building this application from scratch for 3 years could not answer. He simply did not know from where/why/how he could reach certain objects sometimes, and sometimes not. Initially I did not either, but after a few more days I was more productive than he was although I still had to look up a lot of library calls for the application. He was a nice guy, but he did not care about the details. I can not even imagine myself working in an area for 3 years and not asking how/why? My background in java really helped me ask the right questions

      Perhaps you would "just get the work done" faster if you spent some more time with a particular language (or you could do it just for the fun of it like I do). I realize I'm in a minority here and that you're all just a bunch of lispers anyway.

      Ok, I admit it, I like LISP as well.

      --
      She made the willows dance
    20. Re:If you want a job developing stuff by GeckoX · · Score: 1

      No actually, you don't. You make assumptions about my experience and abilities, nothing more. You read into what I said purely what you wish to read into it to support your stance, even though it is simply not there.

      You state that I must think that learning a new language is as simple as keyword substitution. That's simply retarded, of course it's not that simple. Once you know the syntax for a couple of different languages, you'd better be able to pick up the syntax for a new language quickly, but that has almost nothing to do with learning a new language. One's experience with programming in a language or two should give them the background to know what needs to be done regardless of the language. Then it's a matter of learning how to do those things properly in the new language. Granted, some will be easier to pick up than others. Note that I did not say that someone that has been writing VB for 10 years should be able to jump right into C/C++.

      For myself, I learned how to program using C++. I have coded a bit of C, and know that should I need to, I could very quickly become quite productive in C. I then went on to do a lot of web stuff, writing a lot of back end code in C++, and a lot of client code in JavaScript. In the past 5 years, I've been using mostly C#. Picking up C# at that time was a joke from a language perspective, the learning was in the libraries, but that was a matter of learning about the bits and pieces required to do the job as they were encountered. At my latest job, it's a VB shop which I was brought in to to lead the way in moving development over from VB to .Net. Since it's a VB shop, I'm using VB.Net. Trust me, it was not a problem to pick up VB.Net. I've also had to pick up a lot of maintenance on a number of VB6 apps...again not a problem. I've managed to make vast improvements to a lot of that code as well.

      But yes, I'm sure you're right, I'd never be able to pick up Java without quitting my day job and going back to school for 3 years. My experience with software design patterns, architecture and algorithms would be all but useless in a Java world of course ;)

      I'm just about to pick up my first PHP project. Never used it before. A contact knowing my experience came to me and asked me if I'd be willing to pick it up. He knows that from my experience I will be able to pick it up quickly, and more importantly, once I do I'll be writing quality code. We both know there will be a learning curve, but we both know it will be fairly short. He thinks things will work out better bringing a good programmer with lots of real world experience in that has to learn the language over a green programmer that's only ever used PHP, or a programmer with only web dev experience that has lots of php experience that has only been mediocre at best. If he knew a great PHP programmer with lots of experience, then that would be the way to go of course, but he doesn't, and it's not important enough a point to put a lot of energy into finding one.

      Good programmers are good programmers, period. Good programmers with lots of experience are going to be able to pick up new languages better than poor programmers or programmers with little experience.

      --
      No Comment.
  14. Never mattered? by Max+Romantschuk · · Score: 1

    Since Java itself never mattered except to sell books, I still don't see why opening it matters.

    Isn't that a bit of a flamebait now...?

    Java is hugely complex but saying it never mattered is a bit extreme methinks? There is, after all, a huge amount of Java software out there. And Java did do a hell of a lot to popularize virtual machines as well.

    Never mattered? While we're at it we could add that the Amiga never mattered because it wasn't ultimately that successful, right?

    --
    .: Max Romantschuk :: http://max.romantschuk.fi/
    1. Re:Never mattered? by Anonymous Coward · · Score: 0

      It matters to me, since i'm doing software for my own use in it right now.

  15. Flaming Summary by Anonymous Coward · · Score: 0

    Since Java itself never mattered except to sell books, I still don't see why opening it matters.

    Slashdot: News that matters only to CmdrTaco?

  16. Not I... by doulos05 · · Score: 1

    I am not a professional programmer, so I have the luxury of getting to choose my tools and switch whenever I want to. I have tried several times over the past to pick up Java, but each time I found it too heavy for what I intended to use it for. Kind of like hunting for deer with a M2 Browning. Personally, I use Python or Ruby for pretty much everything I do. Then again, the biggest project I've ever done was only about 1,000 lines of Python. It was a program for calculating trade between worlds in our http://www.sjgames.com/gurps/traveller/ game.

    1. Re:Not I... by Anonymous Coward · · Score: 0

      What type of coding are you doing that is all under 1k lines? Maybe it is just that Python does everything in 2 lines like Perl, but I routinely break the 1000 line mark on college projects never mind professional work.

  17. Submission needs -1 Troll by patio11 · · Score: 5, Interesting

    >>
    Since Java itself never mattered except to sell books, I still don't see why opening it matters.
    >>

    The day job could buy an awful lot of books with the $X0 million worth of Big Freaking Enterprise Apps we have written in (mostly) Java. Its like any other tool: there are some places where it makes excellent sense, some where it does not, and I have my own personal tastes for when I would use it or not. (Cards on the table: I do proprietary desktop Java development in my spare time and BFEwebA at the day job, but have been mixing in a bit of Rails programming lately.)

    At the end of the day, what matters is "Does Java help us make our customers happy?" It does. Despite how skull-crushingly boring writing CRUD apps can be, for our customers having the things available and working means the difference kissing their kids at 6 PM or being stuck at the office at 2 AM wondering if they will still have a job in 5 hours.

    So how does opening Java matter? Well, even in an extraordinarily mature platform, you'll sometimes find weird, off the wall, how the heck did that happen issues with particular combinations of software. Enterprise Computing = combinitorially explosive numbers of possible adverse reactions. We've got at least 150 packages in the system, many of which have to interoperate with code which has not seen the light of day since the mid-90s.

    You'd think the odds of actually having to touch stuff deep in the bowels of the infrastructure are pretty low, but believe it or not we have our own little fork of, e.g, Tomcat 4.1 in production use *to this day* to get around a particular classloader issue that got fixed in later releases. (We can't upgrade that particular customer at the moment. Its a long story and if you've ever worked in industry you've heard the basic gist before.) Java being open means there is one less place for issues to be totally inaccessible should we need to work around them.

    1. Re:Submission needs -1 Troll by neuromancer23 · · Score: 1

      >> Enterprise Computing = combinitorially explosive numbers of possible adverse reactions. We've got at least 150 packages in the system, many of which have to interoperate with code which has not seen the light of day since the mid-90s.

      Now try to imagine it written in a language like Ruby or Perl. You're problems would be 1000 times worse. You generally tell the students and academics who have absolutely no real world software experience, because they're advocates of platforms other than Java(Ruby, Perl, .NET).

      Not really sure why your post got modded as a troll seems dead on to me.

  18. Concept by lanevorockz · · Score: 1

    The concept matters, now java can be part of free solutions. As java being a programming language very complete and easy to learn, its a good way to put java to others uses. Making better compilers, or better tools to use java like a mono maybe.

  19. It matters to Sun... by jfbilodeau · · Score: 4, Insightful

    Sun is loosing ground to .NET, so they have to regain developer. I have to admit that Open Java is very appealing to me, since I feel that the language/platform does have something unique to offer that is not available anywhere else.

    Furthermore, I don't care what anyone says about .NET/Mono. It is a closed Microsoft technology that Mono will perpetually play catch-up to. It cannot replace what (Open) Java has to offer.

    --
    Goodbye Slashdot. You've changed.
    1. Re:It matters to Sun... by Anonymous Coward · · Score: 0

      Actually, according to TIOBE .NET is losing ground to Java.

      Oh and Java is also #1 on that particular list.

    2. Re:It matters to Sun... by jfbilodeau · · Score: 1

      Thanks for the head's up. I knew that Java was #1, but I assumed that .NET was still gaining grounds.

      However, I'm happy to see that Pascal is still strong on the list ;)

      --
      Goodbye Slashdot. You've changed.
    3. Re:It matters to Sun... by kaffiene · · Score: 1

      Um... Check the job stats - Java eclipses .NET

    4. Re:It matters to Sun... by jfbilodeau · · Score: 1

      Agreed on the job stats. However, I'm getting much more demand for .NET than Java lately :(.

      BTW, I love the site in your sig!

      --
      Goodbye Slashdot. You've changed.
    5. Re:It matters to Sun... by tieTYT · · Score: 1

      One thing that slightly concerns me is the possibility of a billion Java forks. I don't want to have to download a special JRE for every Java app.

      There's a lot of features I've wanted for a very long time. For example: Parameters/local variables to default to final. Instance variables to default to @NotNull (it's an error to set them to null and it throws an exception the instant you do). The switch statement (which I almost never use) to accept a String. Getting rid of type Erasure (I know this exists for backwards compatibility). Lambda functions (I hear they'll be in the official version soon). And so on...

      If someone came up with a fork with all these neat features, I might be tempted to use it. But, I worry about the schism this would cause. At this point someone will probably inform me that I'm an idiot and that possibility has always existed :)

    6. Re:It matters to Sun... by Anonymous Coward · · Score: 0

      FFS, learn to spell. The word you are looking for is, "losing"

    7. Re:It matters to Sun... by shutdown+-p+now · · Score: 1

      Furthermore, I don't care what anyone says about .NET/Mono. It is a closed Microsoft technology that Mono will perpetually play catch-up to. It cannot replace what (Open) Java has to offer.

      It does not intend to, either. A close look at .NET will quickly reveal that all the real goodies are pretty tightly knit into other Microsoft offerings. You can develop cross-platform applications in .NET/Mono, but it's hard, harder than doing so in Java. But if you want the most seamless experience, then you have to go all-Microsoft - use Visual Studio and Team Foundation System for development, IIS for web application hosting, MSSQL for database, IE for browser, etc. It's really what Microsoft sells whenever they sell one of their application - a closely coupled software ecosystem.

    8. Re:It matters to Sun... by Toreo+asesino · · Score: 1

      BTW, I love the site in your sig!

      Yeah, it's got real scientific reasons why Java spanks .Net - my favourite "ASP.NET is a poorly designed and crippled framework as compared to the richness of frameworks found in Java."

      The guys' got an axe to grind it would appear.

      --
      throw new NoSignatureException();
    9. Re:It matters to Sun... by Anonymous Coward · · Score: 0

      > Sun is loosing ground...

      Then they damned well better tighten it.

      Learn to spell.

  20. Unbeliever! by EriktheGreen · · Score: 1
    You mean you didn't believe that Java was the second coming of the messiah, and that we would all be programming in it just after dropping all other languages, and no one would ever write machine-specific code again? :) :)

    I've considered spending time to learn java better, and knowing that the JVM is open sourced is a good thing, but Java as a whole would have benefitted from being open sourced a long time ago, when some of the community that uses it could have fed knowledge and information back into the language and VM design.

    Now it's basically a niche product that's more or less complete, and we either have to accept it as is for use or break compatibility with existing code to make any major mods to it.

    The major advantages java has always had are 1) Increased programmer productivity and 2) Code portability. Both of these are achieved by other platforms now in different ways, so Java is now one of many instead of the only solution.

    Open sourcing it is more insurance for its users than anything else... it won't drive a Java renaissance any more than open source Solaris will, because there are already good alternatives.

    Sun... producing good open source products that would have better been open sourced years ago.

    Erik

    1. Re:Unbeliever! by The+Psyko · · Score: 1

      Wow.

      I'd like to know what world you live in where Java is a niche product.

      In the real world, Java is about as niche as Linux.

    2. Re:Unbeliever! by EriktheGreen · · Score: 1
      Java currently gets used in a couple major places: Large web applications, under a servlet container, and graphical client or management applications. Oh, and development tools like eclipse.

      I believe there's also a lot of use on small portable devices, like smart phones.

      Other than that, Java isn't the language of choice. How many Windows desktop programs are Java? How many open source programs are written in Java? You can search freshmeat by language I think to find out. How many successful shrink-wrapped Java games have there been?

      Java isn't a universal computer language and VM as it was sold to be originally. Sure, it's useful, and great for certain things, but it's not on the road to replacing ordinary C code.

      Outside the areas listed, it's just not considered as a potential development language because of its deficiencies.

      Erik

    3. Re:Unbeliever! by Anonymous Coward · · Score: 0

      1) Increased programmer productivity and 2) Code portability

      This is the abridged list of things that Java has promised and failed at. Java has had a lot of hype for this list. For applications for mobile devices, the Java version and C++ version are developed simultaneously, with the software engineers sitting in cubes right next to each other.

      Every 6 month development cycle, Java is proven to be the inferior language. Java is proven NOT more portable to mobile devices than C++. This may be largely due to the lack of conformance of virtual machine implementations on mobile devices. Regardless of whatever problems Java has, C++ always has with simpler solutions thus being more portable.

      Coding in Java is NOT more productive than writing code in C++. C++ software engineers not only win every time, but make a higher quality application. Evidence that higher quality and higher performance is important is echoed in sales of a product. Female consumers have lower tolerance of software defects and poor software performance than male consumers. Female consumers buy more copies of mobile applications that were implemented in C++ than the same product that was implemented in Java.

    4. Re:Unbeliever! by orasio · · Score: 1

      Windows desktop programs are a niche language.
      Most of us work building enterprise stuff.
      Tool makers are in the minority. Most developers are building apps for the real world, not for the desktop. That means corporate web applications.
      There, the only big platforms right now are Java and .NET. Everything else is niche.

    5. Re:Unbeliever! by EriktheGreen · · Score: 1
      Wow, talk about a skewed perspective.

      "Most developers are building apps for the real world, not the desktop"

      Last time I checked, desktops were in the real world... or did you mean portables, palm devices and embedded systems? There's some Java there.

      If you classify by unit count, dollar sales figures, or user count, I think you'll find the most used computers in the world are PC class single user systems, and on those systems java is installed so web pages look right, not because it's the number one user app.

      Erik

    6. Re:Unbeliever! by bigstrat2003 · · Score: 1

      In the real world, Java is about as niche as Linux. Er... define "real world". That greatly affects the truth of your statement. Desktop PCs, for example, are most definitely a "real world" scenario, and Linux is extremely niche there.
      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    7. Re:Unbeliever! by LWATCDR · · Score: 1

      "If you classify by unit count, dollar sales figures, or user count, I think you'll find the most used computers in the world are PC class single user systems"
      Nope.
      Most people own 1 PC maybe two.
      They will also own.
      A cell phone "mobile device"
      A media player "iPod" embedded.
      Maybe a wap. Embedded.
      A car . Embedded.
      A DVR. Embedded. .... Every little widget on the planet....
      Embedded.
      PCs are way not the biggest by unit count.
      And a lot of work PCs in the enterprise are using Java and or .NET applications.
       

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    8. Re:Unbeliever! by EriktheGreen · · Score: 1
      Okay, then allow me to rephrase, splitter of hairs.

      If we consider a computer to be a device that is capable of flexibly running general purpose programs (a non embedded system) then the PC has the highest count.

      If you're going to count embedded systems, then we can make a similar statement about them: Among embedded systems, Java is not the most run software, or even in the majority. Symbian, Windows Mobile, or real-time OSs like vxWorks are. Java is used for small apps and games in certain cases, and I note that above.. interactive embedded systems are part of Java's niche, but it's certainly not taking over the space.

      "A lot" of work PCs using java in the enterprise is vague, but somewhat true. However, for each of those PCs that runs a java program, it's got 10 or 100 non java programs that do other work or are utilities. I have worked in plenty of fortune 500 companies that have a couple of java programs for web access or systems management, along with 10 more for word processing, spreadsheets, and customer contact management. Again, these are part of Java's niche.

      So, that goes back toward my original statement: Java is a niche product, not the most common environment on the planet, and it's not going to be. Releasing the JVM as open source is a nice step, but it's too late to do more than just give people a warm fuzzy feeling.

      So, yay for Sun making the gesture, but I don't think it'll alter the user count for Java much. It it used or not based on its own merits, and it's too late for a grassroots Java project.

      Erik

    9. Re:Unbeliever! by LWATCDR · · Score: 1

      I am not trying to split hairs. But your definition of a computer IS a PC.
      Everything is a niche product.
      You said that for every Java program there are maybe 10 others that are written in C or C++.
      The thing is that those are often the SAME ten in every company.
      In the Entprise space there are probably a lot more Java applications than C or C++ applications.
      After all there is only one Office, one OpenOffice, one IE, and one Firefox.
      Java is ONE BIG HONKING niche product.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    10. Re:Unbeliever! by aled · · Score: 1

      Last time I checked, desktops were in the real world... or did you mean portables, palm devices and embedded systems? There's some Java there.

      Let's see:
      palm usually uses Java? I don't know but isn't Palm dying anyway? ;-)
      mobile phones: almost all use Java, except iPhone.
      BD players: use Java, if BD replaces DVD in the next years it would mean Java in every house
      smartcards: some use Java, how many?

      --

      "I think this line is mostly filler"
  21. If it weren't for Python, sure by Just+Some+Guy · · Score: 5, Interesting

    We're a Python shop. It does everything Java does that we need it to do, but is actually fun to write. If Python disappeared tomorrow, though, Java would be a no-brainer. It's cross-platform and wouldn't leave us beholden to the good wishes of Redmond.

    --
    Dewey, what part of this looks like authorities should be involved?
    1. Re:If it weren't for Python, sure by eviloverlordx · · Score: 0, Flamebait

      Anal-retentive use of whitespace counts as 'fun'? That's a definition of the word 'fun' I wasn't previously aware of.

      --
      'Loose' is when your pants are three sizes too big. 'Lose' is when you misuse 'loose'.
    2. Re:If it weren't for Python, sure by Beat+The+Odds · · Score: 1

      We're a Python shop. It does everything Java does that we need it to do, but is actually fun to write. If Python disappeared tomorrow, though, Java would be a no-brainer. It's cross-platform and wouldn't leave us beholden to the good wishes of Redmond.

      Sorry about that "no brain" thing. Cuz if there was no Python, Ruby would be a better choice then Java. Of course, even with Python, Ruby is a better choice.

    3. Re:If it weren't for Python, sure by Just+Some+Guy · · Score: 1

      Anal-retentive use of whitespace counts as 'fun'?

      No, but using a programmer's editor written since 1980 is a blast. You might wish to try it sometime.

      Seriously, "Python indentation is hard" ranks right up there with "Java is slow" and "Al Gore invented the Internet" for accuracy and freshness.

      --
      Dewey, what part of this looks like authorities should be involved?
    4. Re:If it weren't for Python, sure by Just+Some+Guy · · Score: 1

      Sorry about that "no brain" thing. Cuz if there was no Python, Ruby would be a better choice then Java.

      ...for you. If it were up to me, we'd be writing everything in Lisp, but I work in a company with other programmers and we have to use something that everyone can pick up and run with. I don't think Ruby's that language.

      --
      Dewey, what part of this looks like authorities should be involved?
    5. Re:If it weren't for Python, sure by eviloverlordx · · Score: 1

      You might want to try and actually read my post. I never said that whitespace in Python was 'hard'. I said it was 'anal-retentive'. I guess English really is hard.

      --
      'Loose' is when your pants are three sizes too big. 'Lose' is when you misuse 'loose'.
    6. Re:If it weren't for Python, sure by Just+Some+Guy · · Score: 1

      I guess English really is hard.

      It must be for you, because you still got it wrong.

      I don't mess with indentation - never have, never will - because Emacs handles all that for me. I'm no more concerned with "anal-retentive use of whitespace" when writing my programs than I am with "anal-retentive use of inodes and sectors" when saving them to disk.

      Who knows: maybe writing the Python interpreter itself is a pain in the butt because of whitespace (although I highly doubt it). That doesn't make using it any less fun.

      --
      Dewey, what part of this looks like authorities should be involved?
    7. Re:If it weren't for Python, sure by Dragonslicer · · Score: 1

      Anal-retentive use of whitespace counts as 'fun'? That's a definition of the word 'fun' I wasn't previously aware of.

      I agree that Python's whitespace significance is unusual and takes a bit of getting used to, but honestly, the required indentation is exactly what any sane programmer should be using anyway.
    8. Re:If it weren't for Python, sure by gumpish · · Score: 1

      the required indentation is exactly what any sane programmer should be using anyway.
      This is like the helmet law. People should wear helmets, but if they have their own insurance policy, the government shouldn't force them to.
    9. Re:If it weren't for Python, sure by smellotron · · Score: 1

      I dunno about you, but I'm actually more anal-retentive about whitespace in C++ (or other similar languages) than in Python. In Python, it's just natural and easy.

    10. Re:If it weren't for Python, sure by ckaminski · · Score: 1

      In my personal experience, when I left BASIC behind nearly 20 years ago, all my languages have had sub-context delimiters

      VB:

      If ( cond ) then
      End If

      C++/C

      if ( cond ) {
      }

      Java

      if ( cond ) {
      }

      Even though some of those languages support excluding the delimiters, I never do. I never got in that habit, even with JavaScript. I only barely can contain myself from fixing all the code I maintain when other people do it (patching rules are - no prettiness patches for prettiness sake)... grrr.

      Python violates that in such a manner that I really can't work with it. Doesn't make it good, or bad, but it's ODD - it's the ONLY language I've ever thought about using that does it that way. I couldn't wrap my brain around it. :-/

  22. Java is the most used language by CarbonShell · · Score: 4, Insightful

    Like it or not, Java is the no.1 language, at least claimed by an article referenced here: http://ask.slashdot.org/article.pl?sid=08/05/29/163253 The last line of the article pretty much gives an indication of the quality of the authors knowledge.

  23. Leave religious arguments to the zealots by cryfreedomlove · · Score: 1, Insightful

    The real differences between an open java and the free java implementations maintained by companies like Sun and IBM are religious in nature. That is, they only matter to zealots obsessed with their own narrow interpretations. Most of us are moderates who only want to write great software. The different is moot to us moderates.

    1. Re:Leave religious arguments to the zealots by orasio · · Score: 1

      The differences are in distribution.
      Free Java means easier bundling, more ubiquity, easier deployment, no legal mess.

      Not that the "religious" thing is a bad thing. That postmodern stance makes me sick.
      I think that having principles and following them is a Good Thing (TM), even WRT software. I resent that popular trend that says that lacking ideology is somehow better. I understand it's easier, but I really hate it.

    2. Re:Leave religious arguments to the zealots by Just+Some+Guy · · Score: 1

      The real differences between an open java and the free java implementations maintained by companies like Sun and IBM are religious in nature.

      That's incredibly naive and impractical. What good is a monetarily-free language that you're not liberty-free to maintain if the vendor decides not to support it anymore?

      I've told this story before, but you get to hear it again. My company has a lot of legacy Visual FoxPro code in production. Microsoft claimed for ages that it was a safe platform to bet on. Then they EOLed it. If the current binaries won't run on Windows 7, then we're stuck on Vista/XP forever or until we port to a different language.

      We settled on Python as our new development platform because it's FOSS and meets our other needs. Had it not been FOSS, we wouldn't have considered it, having no desire to fall into that trap again.

      You say "zealot" and call yourself a moderate. I say "pragmatist" and call you a dreamer.

      --
      Dewey, what part of this looks like authorities should be involved?
    3. Re:Leave religious arguments to the zealots by An+ominous+Cow+art · · Score: 1

      The company I work for does all its work in Visual Foxpro, too (we went from dBase II ->FoxBase->FoxPro->VFP). With the EOL coming, I've been trying to convince them to go with Python for the front end. Wish me luck :-).

    4. Re:Leave religious arguments to the zealots by Just+Some+Guy · · Score: 1

      With the EOL coming, I've been trying to convince them to go with Python for the front end.

      We're not using it directly for the front end, at least not yet, even though we have some PyQT and PyWX code in production. We've been migrating our data to PostgreSQL, and doing more and more of our reporting-type work in Zope and now Django.

      If I had my way, we'd use a web front end for almost everything where practical, and then our employee workstations could be anything that can run a browser. Want to check on something via your iPhone? Not a problem! In the mean time, we're settling for migrating more and more of our business logic to Python with the intention of gluing a new interface onto it at a later date.

      Email me if you have questions. So far we're making great progress!

      --
      Dewey, what part of this looks like authorities should be involved?
    5. Re:Leave religious arguments to the zealots by An+ominous+Cow+art · · Score: 1

      That's essentially what I had in mind, too - PostgreSQL, wx, and more emphasis on web accessibility.

    6. Re:Leave religious arguments to the zealots by cryfreedomlove · · Score: 1

      Your analogy is bogus. Visual FoxPro was a proprietary system from a single vendor. It was easy to see it's user base shrinking. Java, on the other hand, is an industry with the basic tools provided by several vendors (BEA, Sun, IBM, etc). There is a huge industry of books, open source projects, large installs from behemoths like Ebay.

    7. Re:Leave religious arguments to the zealots by Just+Some+Guy · · Score: 1

      Java, on the other hand, is an industry with the basic tools provided by several vendors (BEA, Sun, IBM, etc). There is a huge industry of books, open source projects, large installs from behemoths like Ebay.

      ...and every one of them answered to Sun at the end of the day. If they abandoned Java, IBM would have continued to ship an almost-Java-but-we-can't-call-it-that clone, but that's about the best you could hope for.

      --
      Dewey, what part of this looks like authorities should be involved?
    8. Re:Leave religious arguments to the zealots by petermgreen · · Score: 1

      The main issue comes when you want to redistribute. The previous java licenses allowed to you redistribute under certain circumstanses and you could pretty much forget about fixing things and redistributing those fixes.

      That and the fact that having software provided by your distro means that a lot of compatibility and updates issues are taken care of centrally.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  24. W(h)ither Programming Languages? by david.emery · · Score: 4, Insightful

    So, depending on who you talk to...
        (C | C++ | Java) is the ultimate programming language.

    Now we're being told that compiled languages are passe' and all you need is
        (Perl | Python | AJAX).

    In the meantime, the -art- and -science- of programming language design seems to have withered away due to lack of interest from the developer community.

    From what I've seen over the last 30 years:
        1. Programing Languages -DO- make a difference in both individual productivity and organizational effectiveness. And the latter is -much more important- than the former for anything bigger than a breadbox.

        2. Management doesn't believe #1. In fact, management doesn't believe in software engineering. Instead, management wants to throw bodies at problems to make impossible schedules, with little concern for quality of the product. At best, managers throw process (and SEI CMM/CMM-I) at the hoards of programmers, believing that process is a substitute for
            (a) developer talent
            (b) product quality

    So I guess ( 1 & 2) together explain the demise of programming language design. And all we can pray for is increases in second-order tools such as debuggers and, if we're really good, tools like static analyzers, to make up for the sh*tty set of current (popular) programming languages. And as end users, bugs and security holes will continue to be chronic results...

    dave

    1. Re:W(h)ither Programming Languages? by GeckoX · · Score: 5, Insightful

      I've got two major problems with your post.

      1) You list AJAX along with Pearl and Python in a list to be compared against C, C++ and Java. Here's a hint:

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      2) Er, shitty set of current (popular) programming languages? We have NEVER had such a choice in programming languages as we do now. There are a LOT of popular programming languages right now. C, C++, C#, VB, VB.Net, Pearl, Python, Java, Javascript, Ruby, Eiffel, Tcl for starters.

      Care to go back 15 years and provide me with the list of better, popular languages at that time?

      Don't think you're flaming, but I also don't think you have a clue as to what you're talking about.

      --
      No Comment.
    2. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 5, Funny

      Pearl. All the other terms are correctly spelled?

    3. Re:W(h)ither Programming Languages? by david.emery · · Score: 2, Interesting

      I claim that Ada83 is better than C, Ada95 and Eiffel are better than C++ and Ada05 is better than Java or C#. But that's just my opinion.

        What is very clear is that the design philosophies of Ada (focusing on 'programming in the large') or Eiffel (focusing on 'correctness by contract conformance') have been lost. Both languages, along with others (dating back to COBOL) is on readability over writeability. (Programs get read much more often than they get written.) Python in some respects is the exception, as a language that doesn't start with C as the font of all syntax, and provides more emphasis on readability.

      And many of us work on things that can't rely on high-powered computers connected to high powered networks where everything is a "web service", and the consequence of a software failure is more than "oops..."

      dave

    4. Re:W(h)ither Programming Languages? by adonoman · · Score: 2, Insightful

      Clearly "Pearl" doesn't belong. The other 5 are spelled correctly.

    5. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      Pearl does not belong as it's not a programming language. PERL, however, would belong.

      AJAX also does not belong (I think this is your point), as it's really just an acronym for a technique used in web-development. The actual programming language being JavaScript.

    6. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Umm Pearl?

    7. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      I found it! Pearl is the answer! Pearl is a roundish object living shelled mollusk.

    8. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      I pick "Pearl" since pearls are not languages or technologies like the rest of the items on that list.

      So what do I win?

    9. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      ((LISP) (input))

    10. Re:W(h)ither Programming Languages? by Monkey · · Score: 1

      Pick the item from the list that doesn't belong

      Umm... one of them is a round calcium carbonate based object formed inside of oysters?

    11. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Could you please not write pearl
      it's perl
      the pathologically eclectic rubbish lister.

      Written by an language writer with a sense of humor and lots of humility(or so it seems to this perl user).

    12. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      >>Pearl

      That sure looks like it doesn't belong in the list ;)

    13. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      I will now make the "Pear.L" programming language. We will have awful syntax, a horrid lack of documentation, and pitfalls that only the language's developers can begin to understand (and they're just talking gibberish bull). However, we will have a trendy website and a "glass" Pear logo.

      I expect at least one million clients by the end of this fiscal year.

    14. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Ooh, let me guess...is it Pearl? Because the others are all terms releated to technology!

      It's gotta be Pearl!!

    15. Re:W(h)ither Programming Languages? by Dragonslicer · · Score: 1

      Programmer hierarchy (yes, it is safe for work)

    16. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      Since this was an article about Java, I'll say 'C++' - since the others would be valid class names.

    17. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      "Pearl"

      I don't think you know much about that either.

    18. Re:W(h)ither Programming Languages? by david.emery · · Score: 1

      Mod parent up +1 funny...

    19. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      It's Pearl that doesn't belong. Unless you mean Practical and Extremely Awesome Reporting Language?

    20. Re:W(h)ither Programming Languages? by speedtux · · Score: 1

      Care to go back 15 years and provide me with the list of better, popular languages at that time?

      Smalltalk, CommonLisp, SML, CAML, Snobol, APL, J, Turing, Eiffel, awk, Splus, Objective-C, ObjectPascal, Oberon, Modula 2, Modula 3, Ada, Scheme, CLU, Cedar, Mesa, ...

      Of course, they had much smaller communities because (1) there were many more of them splitting the market, and (2) there were fewer programmers.

    21. Re:W(h)ither Programming Languages? by Mornedhel · · Score: 1

      Actually, PEARL *is* a programming language : it's the Process and Experiment Automation Realtime Language. It still shouldn't belong to the list though, since it's much less used.

      --
      This /.-related sig is a stub. You can help Mornedhel by expanding it.
    22. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Care to go back 15 years and provide me with the list of better, popular languages at that time? C, Pascal, Delphi (yeah, I know it's 80% Pascal), Ada, Simula (it's even dead, yet it was so much better then Java and C++), (Q(uick))Basic, TCL, Lisp, Forth, Assembler, Cobol, Objective C.


      And don't forget all those really great "small" languages, that has lost ground to more generic ones: PostScript, TeX, SQL, SGML, Prolog and all those nice computational languages (mathematica, statistica, matlab, etc). Today people struggle to do things in generic languages that would be easier, cheaper and quicker to do in more specialiced ones, including the time and effort to learn a new language.


      And on the note of C++ popularity. With any real world problem, it's much easier to write a, more adapteble, script that generate fast and woking code in pure C, then it is to write a working program in C++ doing the same thing.

    23. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      Pe(a)rl is a language?
    24. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Care to go back 15 years and provide me with the list of better, popular languages at that time?

      C and Tcl were around 15 years ago. Arguably C++ and Perl were too, but they were still young. Scheme, SmallTalk, and Icon were fine high level languages back then - arguably better languages than many of the newer ones in your list. You should add Lua to the current batch of sexy languages.

      BTW, you misspelled Perl.

    25. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      What the hell is Pearl? Who mods this shit up?

    26. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Is it Pearl ? :P

    27. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      I think it's Pearl.

    28. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      I've got two major problems with your post.

      And I've got two major problems with your post. Okay, so it's really only one problem, but I'm sure that pretty much everybody would agree that it's big enough to be two.

          Perl != Pearl

      or perhaps I should say,

          'perl' ne 'pearl'"

    29. Re:W(h)ither Programming Languages? by smellotron · · Score: 1

      I choose "Pearl", because it's not a word I commonly hear among developers. Sounds a lot like "Perl". I would say "it's not a programming language", but I know someone will come out of the woodwork and cite some obscure language named "Pearl" that nobody cares about.

    30. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      We have NEVER had such a choice in programming languages as we do now. There are a LOT of popular programming languages right now. C, C++, C#, VB, VB.Net, Pearl, Python, Java, Javascript, Ruby, Eiffel, Tcl for starters.

      What is Pearl and where can I download it?

    31. Re:W(h)ither Programming Languages? by shutdown+-p+now · · Score: 1

      So, Eiffel is a popular programming language these days? Why not list Smalltalk and Ada as well, then?

    32. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      We have NEVER had such a choice in programming languages as we do now.

      Whilst I agree with the rest of your post, surely this is true at basically any and every point in time?

      There've been great advances in modern languages of all sorts, of course, but nothing does or ever has stopped you from using or reimplementing older languages, or ever has.

      Seems a little redundant?

      Though ya, he's even more of an idiot for not getting that either.

    33. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Care to tell others about the so-incredible Pearl language? Never heard of it..

    34. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      Perl

    35. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      people with a clue can spell PERL

    36. Re:W(h)ither Programming Languages? by Anonymous Coward · · Score: 0

      I could hardly call C, Eiffel, and Tcl popular.

    37. Re:W(h)ither Programming Languages? by julesh · · Score: 1

      In the meantime, the -art- and -science- of programming language design seems to have withered away due to lack of interest from the developer community.

      Bullshit. We're seeing plenty of new language design work, some of which is really interesting and generating new languages which actually have useful advantages over other currently available ones. See (for example) the latest version of C#, Ruby, OCAML, and Scala, all of which are interesting languages with innovative designs that have come to fruition since Java and/or Python.

  25. Blackdown java by doas777 · · Score: 1

    Blackdown on Linux is the most compelling reason to OSS java.

    Personally I'm very pleased that they opened it. I much prefer to write my code against the same runtime that will be used to run it.

  26. Java for Educational Purposes only. by BuckaBooBob · · Score: 0

    I hate going down this road.. But Java Is a crippled language these days... Its is Very very rare to find a java app that is not tied to a platform in some way... (Be it a Java app that is tied to a specific browser or OS or Version of Java).. That its simply easier and faster to find a App that was natively complied for the platform you are using.

    If Java wasn't being taught in pretty much every Teaching institution I think we would not see any Java apps out there...

    --
    Who needs WiFi when we can have Packet Over Sheep! http://datacomm.org/PoS-InternetDraft.txt
    1. Re:Java for Educational Purposes only. by fbjon · · Score: 1

      As a counterpoint, I have yet to see a Java app that wasn't cross-platform. We must be looking at different sets of apps.

      --
      True confidence comes not from realising you are as good as your peers, but that your peers are as bad as you are.
  27. Java doesn't matter except where it does by Kohath · · Score: 1

    Java doesn't matter in some small circles or groups. In some others, it does. There are many application that use Java in many ways and see a great benefit.

    It matters to the people who use it to get their work done. They exist in significant numbers. Open Java matters only to the subset of people who need perfect openness and use Java.

    This whole topic is wrapped up in the vain need some people have that their programming language choices (of all things) be validated by some sort of public acceptance. So your personal answer to this question might have more to do about your feelings about yourself than about the world at-large. See CmdrTaco for an example.

  28. Right... by spectre_be · · Score: 1

    This is total bullcrap.
    Both the article author & /. editor have no clue at all & I can only pray they've never had any responsability in any project in whatever environment.
    I'd write a rebuttal but it's just not worth the effort

  29. Respect Innovation... by sitarlo · · Score: 0

    Java was the first step towards complete hardware and os independence in a development platform. It's not perfect, but we should be thankful for what it represents and even more thankful to Sun for giving to the community. Even if it isn't 100% open source (because of third-party code), it is still free to use! Companies like IBM, JBoss, etc. have made $$$ on Sun's willingness to share Java. Respect Sun, respect Java.

  30. never mattered by Sloppy · · Score: 5, Funny

    "Slow JVMs. More syntax than C. Lame." -- CmdrTaco

    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    1. Re:never mattered by Larsrc · · Score: 1

      "No garbage collection. Stack overflows. Lame" --Me

  31. An analogy by BlueZombie · · Score: 0, Troll

    Java is to .Net as USSR was to USA Clunky, slow, and inefficient But providing enough threat to keep high tech development rolling along

    1. Re:An analogy by orasio · · Score: 1

      A car analogy would be more appropriate. .Net is like an automatic car, while Java is a manual car.
      The first is easier to learn, and easier to drive in optimal conditions.
      The latter is cheaper, consumes less, is easier to fix when it breaks, and is safer on rough terrain.

    2. Re:An analogy by BlueZombie · · Score: 1

      I have never had a problem driving my .Net roadster. I get in, turn the key, and get rolling. Java is like having to build a kit before I can drive it. Great fun if you're a gear head. Not so great if your goal is to meet a business objective and your wife for dinner all in the same day.

    3. Re:An analogy by Reaper9889 · · Score: 1

      And both are infiltraded by Microsoft now a days... Nice analogy :)

    4. Re:An analogy by Anonymous Coward · · Score: 0

      Actually, it's C# that gives you back many of the opportunities for optimization that Java has taken away. C# implementations also provide pre-compilation and can call C code directly.

      So, if anything, C# is the manual roadster, while Java is some gas guzzling SUV with an automatic transmission.

    5. Re:An analogy by jfbilodeau · · Score: 1

      I think your statement confirms the above analogy. Having developped Ks of lines of code in both languages, I can say that it's easy to prototype with Visual Studio 200(5|8). However, for serious enterprise stuff, .NET has a lot of catching up to do.

      Java may have a steeper learning curve, but it's mighty powerful once you really get into it. I love JEE!

      Oh, and have you tried to develop .NET stuff without Visual Studio or any another IDE?

      --
      Goodbye Slashdot. You've changed.
    6. Re:An analogy by orasio · · Score: 1

      All that is fixed by having an architect in your team. Not all projects are single people projects, anyways.
      I have extensive experience both in Java, and MS platforms. I am working on C# right now. For me, barriers to entry mean nothing. You only need to configure Eclipse once, and build your foundation classes once.
      I invested weeks of my life getting Java to work great. When I get to hire people to work with me, they won't have to.
      Now I'm hired for a big ASP.NET project, and the environment was set up faster, but also we ended up with a design from the eighties, that gets in our way every time.
      Lack of OR mapping is awful.
      Lack of a fully implemented View layer makes me do all the presentation work myself, and makes me slower.
      Two way binding doesn't work for nested objects!!! Give me a break!! This framework is BRAINDEAD I say. BRAINDEAD!!! I end up doing lots of casts in the PAGE!! My .aspx's look awful!
      And those Datasets, they are funny. Try to use some complex datatype like a Guid, and the Table Adapters start laughing behind your back, waiting for your reaction to their behaviour.

      And don't get me started with the IDE. It feels like traveling back in time. Random lockups in a powerful machine, lack of search everywhere, braindead cursor navigation. I don't know how I put up with this.

      It's ok if you want to do some fast prototyping, I give you that, but right after that, you have to fight your way through it.

      (Sorry about the yelling and whining, I just had a "couple" of bad days at work!)

    7. Re:An analogy by BlueZombie · · Score: 1
      I've written serious apps in both .Net and Java at the Enterprise level. And with .Net I get it done in 1/2 the time or less of what I've written in Java. There are, and always will be, various issues that one does better. Buy to my way of thinking the only thing that needs catching up is the perception. Now, I will grant you that the reduced learning curve of .Net does allow some shops to lower the bar on development standards ... and THAT can be a serious problem. There is a lot of junky MS code out there, and a lot of pretty incompetent MS "developers". But having worked on serious development teams in both worlds the Java teams got less work done in the same amount of time. Work being a measure of business needs met rather than hours clocked.

      And why bother to develop .Net without Visual Studio? That's like saying you want to pound nails with a screwdriver. Use the right tool for the job.

      Java's existence as an effective (if not always efficient) competitor to Microsoft is, in my opinion, the reason why both languages have matured as rapidly and as well as they have. I'm glad we have both.

  32. Re:Amazing Online 3D web content by stevens · · Score: 0, Offtopic

    Yay, a Rickroll, that's so new and still funny.

  33. "Java itself never mattered except to sell books" by benjfowler · · Score: 1

    Coming from CmdrTaco, that's a tad harsh (flamebait?), especially in light of the fact that a LOT of Open Source activity these days centres around people building stuff in Java.

    I'd go as far as to claim that a lot of know-how on how to design decent web frameworks, GUI toolkits happened in the Java world (well, TBH, there's Smalltalk too, but who, these days, is building anything substantial in Smalltalk?). The reason why we're not still stuck with crap like EJB 1.1, Topkink, etc, is because a huge army of very smart Open Source hackers are building excellent stuff, which in turn, have become defacto standards (to wit, Hibernate to EJB3, Spring, Struts 2, Seam, Tapestry).

    Nine times out of ten, the Open Source alternative is faster, smaller, and more reliable. It'll be nice to finally see that happen to the JVM itself, once momentum builds behind IcedTea/ClassPath.

    I work building proprietary, boring business apps in Java, however one of the big pleasures of my job is that there's just about always a very good Open Source implementation of any application server, database, library, GUI framework, whatever, that you can think of. The only missing piece that I can really see at this point standing in the way of making the entire stack 100% Open Source from top to bottom is the JVM. This is particularly important to the RMS long-hair crowd who've agonised for years about the Java Trap.

  34. Incredibly complex by mypalmike · · Score: 5, Insightful

    First, as the Java platform has matured, it has become incredibly complex. Today it's possible to do anything with Java, but no one developer can do everything

    What developer has to do everything? We use Java to run our systems without using all the complex frameworks that you seem to be referring to. It does the job. Just because people have developed over-engineered frameworks with a language doesn't detract from the the value of that language.

    --
    There are 0x40000000 types of people: those who understand 32-bit IEEE 754 floating point, and those who don't.
    1. Re:Incredibly complex by harry666t · · Score: 1

      Right. "/usr/bin/emacs is bloated because Emacs distributions often come with a lot of elisp packages, and there are even more all around the net"

  35. language popularity by MadMidnightBomber · · Score: 1
    http://www.tiobe.com/content/paperinfo/tpci/index.html

    1. Java, 2. C, 3. C++, 4. PHP, 5. VB. ("The ratings are based on the number of skilled engineers world-wide, courses and third party vendors.")

    --
    "It doesn't cost enough, and it makes too much sense."
  36. Java never mattered....? by J'rathken · · Score: 5, Insightful

    "Since Java itself never mattered except to sell books..."

    Wow...that has to be one of the most idiotic statements I've ever read from one of you guys.

    I'm no Java evangelist, but saying Java itself never mattered is like saying C (or even C++) never mattered - it just smacks of total ignorance.

    Java has had a HUGE impact on software development, especially in the enterprise. I won't say it's all been great...but it's certainly made a difference in a lot of areas.

    If the language really never matter, there would not be such a large community of developers using Java, and Microsoft would not have bothered to change their entire development platform to be so much like it (i.e. C#/CLR/.NET).

    I'd thought you Slashdot guys were smarter than this. I guess I was wrong.

    1. Re:Java never mattered....? by The+Psyko · · Score: 1

      I'd thought you Slashdot guys were smarter than this. Really? You haven't been reading Slashdot that long, have you? ;-)

    2. Re:Java never mattered....? by Darkness404 · · Score: 2, Funny

      Really? You haven't been reading Slashdot that long, have you? ;-)

      Neither have you. The proper statement would be "you must be new here".
      --
      Taxation is legalized theft, no more, no less.
    3. Re:Java never mattered....? by The+Psyko · · Score: 1

      Yes, you're right.

      About the proper statement anyway. My uid should speak to how long I've been reading Slashdot.

    4. Re:Java never mattered....? by Darkness404 · · Score: 1

      Well yah... But I was hoping to be modded funny... Didn't happen though

      --
      Taxation is legalized theft, no more, no less.
  37. blarg by DerWulf · · Score: 2, Insightful

    > Since Java itself never mattered except to sell books, I still don't see why opening it matters. This is exactly what smileys are for! Anyways, I don't know what's up with all the Java hate seeing how most OSS uses it. Ruby doesn't have unicode support for christ sake! Flame that if you really need to ...

    --

    ___
    No power in the 'verse can stop me
  38. Next filler please by oldhack · · Score: 1
    A dude whines about Java. No real point regarding its Free(TM) implementation - there is no FOSS equivalent of Java.

    I don't mind fillers, but boring, repetitive fillers, on the other hand...

    --
    Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
  39. Yes and No MHO by UseCase · · Score: 2, Insightful

    I am far more fearful of an open fragmented Java than I was of closed Java.

    The fact that Java had a "Sugar Daddy" to regulate it and support it with strong standard libraries made it very appealing to Corp and Gov users. I don't mind an experimental open source implementation but there has to be a stable, commercially viable alternative around that companies can depend on (read hold liable) or the whole platform slowly losses its appeal.

    The "Java never mattered" thing is flamebait . We all know that it is part of the backbone of many commercial web solutions. There are also many projects that just couldn't have existed with it. The argument of validity is pretty much over.

    I primarily use C/C++ professionally but I have used Java in the past as well as C# and a few Scripting languages (Perl,Python). I can say that for certain software solutions there is no better alternative to Java. I can say the same for C++,C# and Perl.

    1. Re:Yes and No MHO by Anonymous Coward · · Score: 0

      Yep

    2. Re:Yes and No MHO by nuttycom · · Score: 1

      I'm not afraid of fragmented Java, because the momentum behind Sun's JDK is tremendous. GCC is open and free, but do you see it fragmenting?

      On the other hand, the open JDK & JVM will be a tremendous boon for JVM platform languages like Scala, JRuby, Jython, and Groovy, not to mention tools like Terracotta. I think that development in those languages will very likely push some nice improvements back to the mainline codebase, too (not that this hasn't been happening for several years already.)

  40. MOD PARENT UP by mkcmkc · · Score: 1, Interesting

    That's where I'm at as well. For the 50/80/90/100% (usually 100%) of a program for which performance is not critical, Python just kills Java with respect to other factors. And for the 50/20/10% of the program for which performance is critical, Java is just too damn slow (even idiomatic C++ is often too slow). Plus, Java doesn't like to be called from other languages--it really wants to be "boss".


    I've used Java from one of the first alpha releases, but it just hasn't panned out...

    --
    "Not an actor, but he plays one on TV."
    1. Re:MOD PARENT UP by The-Pheon · · Score: 5, Informative

      Java is slow?

      Python has the Global Interpreter Lock, which means even though there are threads, they don't execute concurrently. Too bad if your server has several processors / cores.

    2. Re:MOD PARENT UP by Just+Some+Guy · · Score: 2, Informative

      Python has the Global Interpreter Lock, which means even though there are threads, they don't execute concurrently. Too bad if your server has several processors / cores.

      Love Python; hate GIL. Trust me, I know exactly what you mean.

      That said, there are quite a few multi-processing packages for Python (disclaimer: two of the ones under SMP are mine, so I'm kind of biased toward the idea). Also, Python 2.6 will ship with a standard multiprocessing module that's very similar to it's multithreading counterpart and should be an easy migration.

      Multithreading is cool, but there are other ways to skin that cat.

      --
      Dewey, what part of this looks like authorities should be involved?
    3. Re:MOD PARENT UP by Just+Some+Guy · · Score: 2, Insightful

      Oh, and another thing: I think he meant that in the situations where Python is too slow, Java would probably also be too slow. Those cases call for embedded C or other low-level optimization. I don't think he meant to say that Python is faster than Java.

      --
      Dewey, what part of this looks like authorities should be involved?
    4. Re:MOD PARENT UP by flibuste · · Score: 1

      Java is just too damn slow

      I've used Java from one of the first alpha releases, but it just hasn't panned out...

      Indeed the alpha version of Java was slow. That was 12 years ago. Try running a GUI application with JDK 1.6 and a graphic card with an Open GL implementation, see if Python or other such high level languages does better, even on the GUI side which is not really Java's best field of play.

      Plus, Java doesn't like to be called from other languages--it really wants to be "boss".

      Oh..since you're talking about interoperability...The java RMI stack is basically CORBA, but maybe you don't know what that monster is.

      I'm sorry to say that your ignorance in your post shows. You should not try to give people wrong ideas based on your biased and incomplete experience.

    5. Re:MOD PARENT UP by Anonymous Coward · · Score: 0

      >>Python just kills Java with respect to other factors.

      This has to be a joke? Name one area. Performance oh please. Show me a single factual study on Python beating java, this is a joke and misleading.
       

    6. Re:MOD PARENT UP by Anonymous Coward · · Score: 0

      I'm a Java developer - and Java works very well on multiple cores / processors. I haven't tried Jython (Compiler that compiles Python to Java bytecode for execution on a Java VM), but if there are any Python coders out there who feel constrained by the limited MP capacity of ordinary Python, I'd recommend you check it out. You get a very advanced VM along with the language that you know and love.

    7. Re:MOD PARENT UP by mkcmkc · · Score: 1

      By "from", I meant "starting with". It's still slow today, at least as of 12 hours ago. Yes, it's within a factor of two of C, but remember that we're only using it for the performance-critical stuff, so this really does matter.


      As for CORBA, yes it's a monster, but I don't see how that's relevant. I'm talking about calling Java from (say) Python in a reasonably efficient way.

      --
      "Not an actor, but he plays one on TV."
    8. Re:MOD PARENT UP by dodobh · · Score: 1

      Multi-process FTW. You don't always need threads. Event driven programming + multiple processes can make your life easier.

      Threads generally imply shared memory, and all the attendant pain that comes with it.

      --
      I can throw myself at the ground, and miss.
    9. Re:MOD PARENT UP by Anonymous Coward · · Score: 1, Interesting

      You can run separate instances of Python, and the GIL won't matter. That method scales extremely well on web servers. It all depends on the application. I find the number of applications for which the GIL is really an issue are quite small. The majority of applications don't require multiple threads. Many that do use multiple threads do it for I/O optimization(for which Python does let go of the GIL). Other applications can be split among processes. Frequently if performance is one of the top requirements then you probably don't want to be using a byte compiled language anyway.

    10. Re:MOD PARENT UP by Anonymous Coward · · Score: 0

      That page is the worst attempt at presenting information I've seen in quite a while. First the graph - GCC being better is bars extending to the left, Java to the right. Yet the labels for GCC and Java are at the top and bottom. WTF? The unlabelled bars with no key are pretty much meaningless. I'd guess the graph has the same data in the same order as the table, but I shouldn't have to guess. Quite what the table has against values less than one I have no idea.

    11. Re:MOD PARENT UP by smellotron · · Score: 1

      Python has the Global Interpreter Lock, which means even though there are threads, they don't execute concurrently.

      That's what popen(), fork(), system(), pipes, sockets, shared memory, and other methods of separate processes are for. Threading is probably not the answer in Python. As another reply mentioned, the GIL doesn't hurt for multi-threaded apps that are I/O-bound, you're still probably better off using something like asyncore when necessary, and multi-processing otherwise.

      As another benefit, all of the standard system utilities for dealing with processes work much better than for threads... it's easy to cycle a single part of the system when every part is a separate daemon process. It's easy to actually use signals for interesting things like configuration reloading when processes are used instead of threads.

    12. Re:MOD PARENT UP by MenTaLguY · · Score: 2, Informative

      To be fair, there's always Jython. Python the language, on the JVM.

      --

      DNA just wants to be free...
    13. Re:MOD PARENT UP by ckaminski · · Score: 1

      Not if you want responsive UI's. Threading is a must.

      And ultimately why 90% of the GUI interfaces out there are crap whenever your system starts to get slightly loaded... :-)

      Peace. I've tried Python. Personally I dislike it, but I'll never ban if from my system simply on religious grounds...

    14. Re:MOD PARENT UP by Just+Some+Guy · · Score: 1

      You can't get a responsive UI with fork()?

      --
      Dewey, what part of this looks like authorities should be involved?
    15. Re:MOD PARENT UP by ckaminski · · Score: 1

      sigh...

      same difference. :-P

    16. Re:MOD PARENT UP by Just+Some+Guy · · Score: 1

      I'm confused. Why mention it, then? You said threading is a must, but it's clearly not. It's also not even remotely the same thing as multiprocessing, which suffers none of the GIL problems.

      --
      Dewey, what part of this looks like authorities should be involved?
  41. java is like an old truck by icknay · · Score: 5, Interesting

    Java has its problems, but it's actually a great stable platform. I think people carp about Java's flaws because it is so popular, taking shots at the leader. In reality, Java is a huge and boring but effective ecosystem if you want to deliver a piece of software and have it just work.

    It's not sexy, but jeez on linux, windows, and Mac, I've built java code and moved the .jars all all over the place, and darned if it doesn't do what it's supposed to, like an old truck that just works carts around all sorts of work.

    With Java being open, we all benefit from its increased spread as an open and reliable platform -- like C. Depending on Java looked a more iffy when it was so tied to Sun. Your source code is such an expensive investment, you don't want to take weird risks (cough .net cough). With Java open ... well now it looks like a very safe, neutral choice.

    You can write C code, and since it's open, you know your code would work all over. Java has a future that way too now.

    C is still great for its niche, but (flame on) Java delivers 10x more capability in its libraries. C is a creature of the 1970's, so you don't get so much (I *love* C, but get a lot more done in Java). Also, the optimizations in HotSpot are awesome, making languages which run on the JVM look like the future. I hear if you want to see Java with the cruft stripped away, check out Scala.

    1. Re:java is like an old truck by Anonymous Coward · · Score: 0

      (flame off)
      Be careful young man!

    2. Re:java is like an old truck by juancnuno · · Score: 1

      Java's not an old truck. It's a series of tubes.

    3. Re:java is like an old truck by Anonymous Coward · · Score: 0

      So you're saying you can like, just put things on it?

      I've always thought of it as more of a series of curly braces.

    4. Re:java is like an old truck by Anonymous Coward · · Score: 0

      I really appreciate the Java stack of technologies. You package an application as JAR/WAR/EAR and easily deploy it to different but standards-compliant runtimes and application servers.

      That said, I do not really like the OO way of programming (it is good for some stuff but not for everything) and I have a functional programming background. That said, I really like Scala as a drop-in replacement for Java.

      Scala + OpenJDK sounds like a killer combo :).

  42. Re:Amazing Online 3D web content by BiggerBadderBen · · Score: 0, Offtopic

    Please go fuck yourself

  43. DO NOT CLICK by surmak · · Score: 0, Offtopic

    Mods, please mod parent down, and do not click the link. It leads to http://www.raygoldmodels.com/ which is impossible to exit short of killing your web browser due to endless message popups.

    (On a related note does anyone know of a way to deal with web pages that begin spewing endless modal dialogs, one after another?)

  44. How can a submission be so stupid ? by Anonymous Coward · · Score: 0

    You may like in or not, but if you have ever _worked_ in a field remotely linked to computer programming, you would know that Java is the industry standard for big serious projects. Period.

    The rest is a matter of personal taste.

  45. Java has become a tool for me since 2000 by drolli · · Score: 1

    Really. When version 1.4 came out it started to be usable. Contrary to the lore it was NOT ineffcient to use AWT. At least not if you wanted t opur a GUI to your PERL/Jython/etc whatever Program. And for the eas of installation under debian open source tools matter. I only use open source tools now for development and I am much happier because of reduced installation complexity

  46. Well, it doesn't matter as much as... by Anonymous Coward · · Score: 0

    ...the author shutting his mouth.

  47. Java is UML by Anonymous Coward · · Score: 0

    Java is transformed UML diagrams filled with obvious and clear code. Some programming languages may be more powerful (in expressing, like Python/Ruby), but Java can be understood better as there are not so much options, what a given code could mean (at runtime). I think that's the reason it has the best automated tools (IDEs; refactoring). Aside from C/C++ maybe, they have a head start.

    On topic: I believe that open sourcing will help influence and reflecting between the projects (and maybe ease bug finding?).

    PS: There's lots of stuff I wouldn't use Java for, though.

  48. Commander Taco Likes Open Assholes by Anonymous Coward · · Score: 0

    The open assholes of the slashdot mods....fucking fags.

  49. Does an Open Java Really Matter? Just like... by SappoMan · · Score: 2, Interesting
  50. Nice try Taco by Tim+C · · Score: 5, Insightful

    I think I know what you're doing - purposely trolling in order to incite a flamewar, driving up hits and thus ad impressions.

    It won't work though; surely the vast majority of your readership browses with Firefox and some sort of adblocking system.

    I mean it can't be that you genuinely believe that arguably the most often-used language for enterprise and commercial web development work "doesn't matter"; a 30 second search on any popular job website would dissuade you of that infantile notion.

    1. Re:Nice try Taco by Anonymous Coward · · Score: 0

      Ad impressions? What?

      Adblocking?

      I use Konqueror. I just discovered it has an adblocker in it. I honestly had no idea there were any ads on Slashdot.

      Wow! So that's how this site works.

    2. Re:Nice try Taco by MrSteveSD · · Score: 1

      It won't work though; surely the vast majority of your readership browses with Firefox and some sort of adblocking system.

      I didn't even realise there were adds on Slashdot. I had to disable Ablock to look.
    3. Re:Nice try Taco by ardle · · Score: 1

      Thanks - now I don't have to :-)

  51. Debian integration by Britz · · Score: 2, Insightful

    I use Debian. And with Java to be able to go into main it makes for even less hassle with Debian. Even if you don't use Java there are many programs written for it.

  52. Kids and their new fangled languages by UnknowingFool · · Score: 1

    *Sigh* Every now and then, we have proclamations about this [New Language] will totally replace [Old Language]. Yet almost 50 years after COBOL was first invented, it is still being used today. Why? Because it still works. Realize that businesses and people don't change for change's sake. There has to be a compelling reason to replace [Old Language] with [New Language]. Usually [New Language] has this X feature doesn't cut it. Most of the time, older code is replaced when the system is being replaced, i.e. hardware upgrades.

    --
    Well, there's spam egg sausage and spam, that's not got much spam in it.
  53. Seems to feed me pretty well... by $1uck · · Score: 2, Interesting

    and I'm not an author.

    1. Re:Seems to feed me pretty well... by Pysslingen · · Score: 1

      Own a bookshop? =)

  54. How about naming some packages? by MMC+Monster · · Score: 0

    Every time java comes up as a near-dying language, people sprout up saying that there are plenty of java jobs out there. That it's still in high demand.

    Why aren't there more open source applications written in java?

    The only one I can think of off the top of my head is azureus (now zune), which is not exactly known for it's small resource footprint. In the closed source freeware realm, jalbum is available and quite nice to use.

    Both of these are a pain in the ass to install under Ubuntu, by the way. Jalbum makes you manually find the java runtime environment on installation, while azureus packages for Ubuntu either don't work or quite outdated.

    Any other great free java apps of substance?

    --
    Help! I'm a slashdot refugee.
    1. Re:How about naming some packages? by kiwipom · · Score: 0

      Well, first, depsite waht people on /. seem think, most software development today is not F/OSS, but business apps. Even so, I can name Eclipse, JBoss, most Apache projects etc etc. So there are loads of open source Java apps out there, they're just not desktop apps. Before you make a point, why not try and understand the subject?

      --
      Dum spiro spero
    2. Re:How about naming some packages? by MMC+Monster · · Score: 1

      Actually, I am trying to understand the subject. Never said I was a programmer. :-)

      That being said, my question still stands. Eclipse, JBoss and (most of) the apache projects are really not tailored towards end users.

      Where are the office apps, games, browsers, IM clients, etc. written in java?

      --
      Help! I'm a slashdot refugee.
    3. Re:How about naming some packages? by kiwipom · · Score: 0

      That's exactly my point, most Java is server side, as an end user you don't know you're using it, it's just there running on the server. I'm the first to agree that Java on the desktop is generaly crap, but on the systems I work on, where it's processing tens of millions of transactions per day, across distributed data sources, it kicks arse. As an end user you just don't see it.

      --
      Dum spiro spero
    4. Re:How about naming some packages? by Mr.+Stibbons · · Score: 1

      The only one I can think of off the top of my head is azureus (now zune), which is not exactly known for it's small resource footprint. In the closed source freeware realm, jalbum is available and quite nice to use.

      You mean, aside from major IDEs? NetBeans, Eclipse, and JEdit to name a few. Also, there are a considerable number of simulation libraries for various fields written in Java. I use Repast quite often, and for a while was using a particle physics system (the name of which escapes me at the moment), both of which are written in Java.
      --
      I was going to have a amazingly funny and clever sig, but I forgot, and failed miserably.
    5. Re:How about naming some packages? by LWATCDR · · Score: 1

      "Where are the office apps, games, browsers, IM clients, etc. written in java"
      Office apps? They tend to be in offices.
      Games... Cell phones.
      Browsers? Cell phones.
      IM? Cell phones.
      There is nothing stopping you from writing an IM client in java. Browsers? The truth is that there are very few of them at all.
      If you mean mainstream on the desktop stuff? There are a very few real applications that people use that are mainstream desktop stuff. Most all of those are written in C or C++

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  55. Re:Java was a good idea by UnknowingFool · · Score: 1

    However when it comes to writting business apps that run on Windows desktops, .NET is the best way to go.

    This is one of the reasons that is keeping .NET from getting more share. Many companies run systems other than Windows. Also more software is moving away from the desktop. Although Google Apps isn't as fully featured as MS Office, it goes to show you that you don't necessarily need a desktop app for everything.

    --
    Well, there's spam egg sausage and spam, that's not got much spam in it.
  56. Re:"Java itself never mattered except to sell book by Grapedrink · · Score: 1

    "well, TBH, there's Smalltalk too, but who, these days, is building anything substantial in Smalltalk?)"
    Perhaps http://www.seaside.st/ ? Financial industry? If anything, Smalltalk is picking up a lot more momentum and popularity recently. It's a great alternative if you're sick of Java or C# or don't buy into Rails hype. That said, I agree with everything else you said. I too work with Java (and C#) quite often and I have to say that Java has so many open source libraries and support it's amazing and makes up for many of the things I hate.

  57. This should be obvious, but by Trails · · Score: 4, Informative

    To ask if Java were new we would use it today, while valid as an abstract and absolute measure, is irrelevant in today's software world context.

    Java is HUGELY entrenched in today's business software market, probably even more so if one weights by overall company valuation (i.e. Java's market share by company valuation is substantial, perhaps even dominant).

    Open sourcing it matters since Java's growth and maintenance matter, as the investment in Java is substantial and unlikely to change any time soon.

    Java's never gonna be the hot young thing in programming again (if it ever was), but that's irrelevant to the question of open sourcing it. Java has substantial value, and open sourcing software of value matters. Doing things that alter the growth and maintenance plans of a heavily vested technology matter.

    Further, this:

    Today it's possible to do anything with Java, but no one developer can do everything -- there simply aren't enough hours in the day to learn it all.

    is a tautology. No developer can do everything with C++ either, that doesn't lessen its value or relevance. Neither does Java's complexity or unwieldiness lessen the value gained in being able to learn from and modify how it has implemented things.

    I personally don't get this constant desire on some people's part to denigrate Java. Some sort of Comp Sci elitism for the business language?

    Claiming open sourcing Java doesn't matter is like claiming open sourcing windows wouldn't matter; the same arguments apply. Windows is unwieldy and complex, and competing software generally does things better than windows.

  58. Mod article down by realinvalidname · · Score: 3, Insightful

    Since Java itself never mattered except to sell books, I still don't see why opening it matters.

    I made a hell of a lot more coding Java than writing books about it.

    Slow news day, huh? What's next, what Lawrence Lessig had for lunch, followed by moral outrage over being charged cash money for a product or service?

  59. Re:Java was a good idea by Grapedrink · · Score: 1

    Java was a good idea, but there are lots of other languages that came before that had all the characteristics you describe. I would argue that most of those already did a better job than Java but were marketed or supported poorly at various stages.

    I use .NET every day as well as Java and I agree MS did a better job. MSIL is a great concept, but unfortunately too much of the framework has deep hooks in windows to work in whole cross platform. Mono of course tries to solve this issue, but I wish MS would be a little more careful about how much they bake windows into everything.

    I think the answer is to use the best language for the job and that means Java is long from being irrelevant given the wealth of functionality available to us today.

  60. Signed Java Applets = True Web Apps by The+ZoNiE · · Score: 5, Insightful

    I program in Java because both for it's platform independence and for the fact that if you sign a Java applet and embed it in a web page you are pretty much able to do whatever a fully-fledged Java application could do, like access the full file system.

    I know of no other platform that allows you to write true "web apps" that can rival the stand-alone ones.

  61. I hate Java by Anonymous Coward · · Score: 0

    ..for the sole reason that it's a frickin' memory hog. Huuuuge footprint.

  62. Re:Java's Place In the World by Trails · · Score: 1

    Actually, Java has lots of data....

    Seriously though, the applets point is a joke. Applets were dead well before Flash was anything more than an animation tool. Applets always have and always will suck, that's why we have so much shit DHTML to deal with; it was easier to hack it together with a document markup and some (at the time) piece of shit scripting language that had to run correctly on up to six disparate platforms at a time, because even THEN it was easier and better than applets. If you think applets ever had any real significance to Java's maturity, I'd guess you've been off coding .net for the last 7 years.

    Java is entrenched in business server apps, and overall that's probably still growing. 20 years? Try 80.

  63. Lighten up, Francis. by Linux_ho · · Score: 1

    It was a joke.

    --
    include $sig;
    1;
  64. Its the search for more users by Anonymous Coward · · Score: 0

    At least thats what I think. When it comes to geeks and such you can be pretty sure that a large amount is using *nix (-like) operating systems. And when looking at that market I think its safe to say that a majority will be using Linux. No statements from me about whats better and whats worse, I'm only trying to do the numbers here.

    And what is keeping Java as it was outside of this "geek market"? The license which made it impossible for some bigger names to allow the inclusion of Java. So considering how Sun is trying hard to keep its market share as large as possible its only natural for them to try and make Java "compatible" with the powers that be.

    But I think thats also the only thing which will matter here; the inclusion of Java. I doubt that just because Java is included with Linux will automatically imply that more people would use it. It might make things a little more reachable but thats about it. In the end Java will merely be one of the many languages out there. So IMO it is a nice move but I don't see the big advantages which Sun apparently sees. And for the record; I am a Java freak myself, been using and programming Java for a few years now and no plans to switch yet ;-)

  65. threads == more rope by mkcmkc · · Score: 1

    Python has the Global Interpreter Lock, which means even though there are threads, they don't execute concurrently. Too bad if your server has several processors / cores.

    That's what fork is for. I had my fill of "everything runs in the same address space" in my MSDOS days--threads are just a return to that nightmare.

    --
    "Not an actor, but he plays one on TV."
    1. Re:threads == more rope by flavious · · Score: 1

      Creating processes is a much more heavier thing to do for a kernel and it takes more time than threading - everyone knows that.

  66. What a terrible misunderstanding you have by SuperKendall · · Score: 1

    Either you are a terrible writer, or your understanding of what Java does is very bad.

    1) Java CPU usage is actually quite good these days, with modern VM's the code is all compiled on the fly and can be faster than C++ or C, but with no worries like stack overflows (there are always , of course, other worries...).

    2) "Flash has destroyed Java market share". What market share? Applets on the browser never took off, there was no market share there to steal. Where Java went on to be huge, and where it continues to grow, is in enterprise web applications/servers and to a lesser extent desktop applications.

    You think it's going to take 20 years to die, but use of Java is still increasing - and because the language is future-proofed to a huge degree that many other languages are not (like full UTF and localization support baked into every corner of every library) it will probably be around quite a lot longer than you are thinking. Ruby and other languages like it are fun for smaller projects but simply do not have the depth and richness in libraries that you need if you are building something to take on a huge load, or be a truly world-wide application.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  67. So why does it matter? by twitter · · Score: 2, Insightful

    It matters because you don't have to toss Java out if you want to move to a free platform. This is a reduction of friction that's good for everyone. The choice of one or the other no longer has to be made. The "write once run anywhere" language will finally be what it said it was.

    --

    Friends don't help friends install M$ junk.

    1. Re:So why does it matter? by Lord+of+Hyphens · · Score: 1

      The "write once debug everywhere" language will finally be what it said it was.

      Fixed that for you.
      --
      "I've spent my whole life figuring out crazy ways to do things. It'll work." -- Montgomery Scott, "Relics"
  68. Re:Java was a good idea by gbjbaanb · · Score: 1

    but I wish MS would be a little more careful about how much they bake windows into everything. But if they didn't bake so much Win32 into it, there wouldn't be any reason to use MS Windows... see where I'm going with this?

  69. Open Java and the VB6 Lesson by MrSteveSD · · Score: 2, Informative

    The company I used to work for was hit badly by Microsoft dumping VB (VB.NET is not VB, and don't mention the upgrade wizard) and I'm sure it's only one of many. We were hoping for an improved version of VB6 but Microsoft decided to wreck the huge investment we had made in VB code. We had spent years and lots of money writing VB code for our apps because it was easy and convenient with lots of business components available which were simple to plug in. The company just didn't have the resources to rewrite everything in another language and it was a pretty big disaster really. I just couldn't believe that with so many millions of lines of code and so much investment in VB6 from industry that Microsoft would just dump it, but I was wrong.

    The bosses asked me my opinion on what we should do next. We didn't really have a solution to the enormous cost of rewriting everything, but we needed to decide on a new language to adopt. After being so horribly stung by Microsoft on VB I suggested that Java would be a safer direction to go in. C# and .NET were nice of course, but after Microsoft dumping VB6 I was quite worried they would pull some similar devastating stunt in the future. Unfortunately my advice fell on deaf ears and the gravitational pull of Microsoft products was just too great. It's a shame because a lot of the customers are now moving over to Linux, Java and various Open Source technologies as a matter of company policy.

    After the VB saga, I am very dubious of using any language which is controlled by a company (particularly when it's Microsoft). Clearly Sun still has a lot of control, but now with Java being Open source, it won't matter so much if Sun dumps Java. We'll have the code after all.

    P.S. Trying to upgrade component by component using interop was hell and not really a viable option.

    1. Re:Open Java and the VB6 Lesson by alexborges · · Score: 1

      Serves them right for using VB in the first place. See, this is why PHB should not, ever, take technicall decitions but only validate the bussiness aspects of them.

      --
      NO SIG
  70. You're wrong by ttfkam · · Score: 5, Insightful

    No, seriously, you're wrong. Just because you don't see that Java is being used for a web site's back end doesn't mean you haven't been using it. Personally, I like Eclipse, but then I'm a programmer. I used to use Azureus, but since I'm mostly on a Mac, I started using Bits on Wheels. Not a crack against Azureus from a functional or usability standpoint, I just preferred the "wheel" in BoW. Totally arbitrary eye candy.

    The problem with Applets was that AWT was a GUI framework built on top of a web browser, which is already a (wait for it...) GUI framework. The only reason Flash succeeded was because web browsers didn't have vector graphic support ten years ago.

    As for Sun, they have given far more to the open source community than most give them credit for. NFS anyone? There are more examples, but just for a moment wrap your head around the concept of what if Sun never released the specs to NFS. What would the BSDs and Linux use to map file shares? CIFS/SMB aka Samba?

    So let's take a look at Win32 MFC. That was written in C/C++. So did that framework suck so much? Answer: good code can come from any language where the developer is sufficiently skilled. Bad code can come from any language despite any intrinsic qualities in that language.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  71. Multiple Inheritance by ttfkam · · Score: 5, Insightful

    Ignoring the parent troll for a moment, can someone please show an example of where multiple implementation inheritance is superior (not just equivalent) to multiple interfaces and the composition design pattern?

    I've really tried to find a case, but ultimately fail. I even tend to agree with Gosling that abstract classes were a bad idea. On the other hand, I can name innumerable cases where MI causes more problems than it solves.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Multiple Inheritance by Anonymous Coward · · Score: 5, Funny

      I think Multiple Inheritance's primary use is for contriving strange interview questions. :)

    2. Re:Multiple Inheritance by Dolda2000 · · Score: 2, Interesting

      Ignoring the parent troll for a moment, can someone please show an example of where multiple implementation inheritance is superior (not just equivalent) to multiple interfaces and the composition design pattern?

      If you're going to say that, you might as well go as far as saying that inheritance itself has no merit when Java has its interfaces instead. And I'd argue that you'd have a point.

      After all, inheritance is just a convenient way of taking functions from some other implementation of an interface and making your own implementation use those same functions. In that regard multiple inheritance makes sense, since you'd be able to pull in code from all over the place easily. But, one might argue that it should be possible (and easy) to do that more explicitly than using inheritance.

    3. Re:Multiple Inheritance by PinkPanther · · Score: 1
      I can't come up with a valid case for multiple inheritance because I can't come up with a real world entity that has more than one parent class. That would be the main reason that I view MI as "dangerous".

      I used to fight with a former coworker over this time and again. He kept arguing how cool it was to have a class that was a character, a vehicle and a weapon, and the great things he could do in the UI using polymorphic properties. I pointed out how he couldn't even talk about the functional design without blathering about the technical implementation...there simply was no benefit that MI offered his design, and in fact it hindered it a whole lot.

      --
      It's a simple matter of complex programming.
    4. Re:Multiple Inheritance by Sancho · · Score: 1

      I've never used multiple inheritance, myself, since all of my experience in OOP has been in languages which don't support it. Nonetheless, with interfaces, you almost always have to implement some methods to get any functionality out of them. I can certainly imagine that not having to do this would be a useful. Furthermore, there are some Java classes which have interface equivalents which you must use if you want to inherit from a different class. Certainly, then, if multiple inheritance were allowed, creating two separate bits of code (the class and the interface) wouldn't be necessary, right?

    5. Re:Multiple Inheritance by asc99c · · Score: 1

      Actually at work I've used this where a screen is a subclass of both a data source and a standard screen type. Doing this makes it much easier to write a standard template that gets copied and pasted into each screen.

      Now I'm not going to claim that sounds like a great idea, but after working with it for a bit, I have to say it's incredibly robust. A completely new and inexperienced programmer can be given screens to customise and time after time they create bug free screens quickly. The template screens are well commented and show the basic way to do all the expected customisations - ideal for a newbie to work with. Meanwhile the framework code is very well structured and ideal for an expert to maintain and improve.

      Doing it in an academically 'proper' way causes more problems when you throw in programmers with no clue what they're doing. The weird way works very well in the real world.

    6. Re:Multiple Inheritance by fm6 · · Score: 3, Insightful

      You're asking for an objective answer to a subjective question. What's "superior" in this context? A Java person would say code that easy to debug and maintain. A C++ person would say code that's expressive and concise. Both are right — within their own circle of peers.

    7. Re:Multiple Inheritance by tukang · · Score: 2, Insightful

      Here's one I ran into recently. Actually, if there is a better way to solve this other than using MI I'd love to know.

      #displays a fixed number of rows
      base_table

      #adds pagination capability to a base_table
      pagination_table extends base_table

      #adds selection to a base_table
      select_table extends base_table

      #adds pagination controls for a select table
      pagination_select_table extends select_table

      The implementation of pagination_select_table is exactly the same as the implementation of pagination_table but since the language doesn't support MI I have to maintain the pagination code in 2 places.

    8. Re:Multiple Inheritance by mr_e_cat · · Score: 1

      someone please show an example of where multiple implementation inheritance is superior (not just equivalent) to multiple interfaces and the composition design pattern

      I have no idea what that sentence means. I must be a moron.

    9. Re:Multiple Inheritance by master_p · · Score: 1

      Fud, fud, fud. Please name some problems MI causes.

      The original intention for MI was to combine components. I think it's a valid approach for component composition, given that it is rare that one component usually depends on only one other component.

      As for requesting an example for where MI is superior to multiple interfaces, there are plenty. For example, in Qt, QPopupMenu and QMenuBar inherit from QFrame and QMenuData. It saves a lot of effort to have the menu data in a separate class, since both QPopupMenu and QMenuBar automatically obtain the interface of a menu.

    10. Re:Multiple Inheritance by nebosuke · · Score: 1

      This won't really help you out, but the problem you have here is that the pre-existing class hierarchy is screwed up in the first place (granted, I'm only working with your very brief description here).

      What you should have instead are classes implementing: table view, table data model, selection model. They are orthogonal concepts that do not belong in the same class. Want pagination? use a paginating view. Row-level instead of cell-level selection? Use a difference selection model. Etc.

      Mashing orthogonal concepts together means that soon you'll need a row_select_paginating_db_cursor_backed_table, a cell_select_vector_table, a row_select_paginating_arraylist_table, etc.

      Essentially, your situation is a poster child for anti-MI arguments. The usual suspect for a design like the one you've described is that the original author leaned on MI as a crutch that either prevented him from (or allowed him to avoid) learning better OO design practice. It's a catch 22. You need MI to mitigate the damage of a bad design most probably caused by reliance on MI.

    11. Re:Multiple Inheritance by Heir+Of+The+Mess · · Score: 1

      I almost hate myself for saying this, but Microsoft's COM interface is a good example of how well multiple inheritance works. A COM object can have lots of standard capabilities, and to add them in you just inherit them. To a master C++ coder COM is pretty interesting, but it would make a Java coder's head hurt. There used to be a joke floating around the net showing how a master coder could write a COM hello world printing object in a 1000 lines of code.

      --
      Australian running a company that does C# / C++ / Java / SQL / Python / Mathematica
    12. Re:Multiple Inheritance by Abcd1234 · · Score: 1

      Anyone who says "expressive and concise" is more important than "debug and maintain" needs to be run out of the industry on a rail, then tarred, feathered, and finally shot.

    13. Re:Multiple Inheritance by fm6 · · Score: 1

      If you shoot all the C++ programmers, you might get arrested. Moral issues aside, the economic impact would be pretty extreme.

    14. Re:Multiple Inheritance by ttfkam · · Score: 1

      But you haven't shown why MI is superior to object composition in this case. The latter can still be used in a template.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    15. Re:Multiple Inheritance by ttfkam · · Score: 1

      That's a library implementation issue. Once again, there is no reason why QFrame and QMenuData couldn't be interfaces with an implementation class behind the scenes that has an instance of both classes for implementation.

      For you, as a user of Qt, you would still just extend from QPopupMenu or QMenuBar. As a library user, nothing would have changed for you. Surely you don't expect to extend from both QMenuBar and QPopupMenu?

      http://www.artima.com/lejava/articles/designprinciples4.html

      Erich Gamma's seems more to agree with me. And I agree with Gosling that abstract classes (partial interface/partial implementation) were a bad idea.

      Your interface and your implementation should remain separate.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    16. Re:Multiple Inheritance by ttfkam · · Score: 1

      Heh, and I was just thinking about how COM enforced the separation of interfaces and implementation so that MI wasn't as necessary. Or I guess hiding the bodies better. ;-)

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    17. Re:Multiple Inheritance by jgrahn · · Score: 1

      Anyone who says "expressive and concise" is more important than "debug and maintain" needs to be run out of the industry on a rail, then tarred, feathered, and finally shot.

      First, noone said it was more important. Secondly, expressiveness and conciseness are supposed to help during maintenance. I'd rather debug a complex Perl regex than the equivalent hand-written parser.

      BTW, I use C++ daily, but I've never found a use for multiple inheritance. It's the spare tire in the trunk of my C++ car, and that was what it was designed to be.

    18. Re:Multiple Inheritance by Darrenor64 · · Score: 1

      I would dare say that multiple interfaces is simultaneously more flexible and clearly defined than multiple inheritance. But my opinion might be suffering from never being able to use multiple inheritance in Java.

    19. Re:Multiple Inheritance by Darrenor64 · · Score: 1

      I actually appreciate that Java doesn't allow multiple inheritance in classes. It prevented me from going down the path of making some really bad design decisions. Just because something seems easier doesn't mean that it's a good choice. Code that works != flexible design. One thing that people often don't realize, is that Java DOES allow multiple inheritance -- strictly for interfaces (which I also find quite useful).

    20. Re:Multiple Inheritance by Darrenor64 · · Score: 1

      Anyone who says "expressive and concise" is more important than "debug and maintain" needs to be run out of the industry on a rail, then tarred, feathered, and finally shot.

      Alas, the sinister side of Program Language War rears its ugly head.

    21. Re:Multiple Inheritance by Darrenor64 · · Score: 1

      Essentially, your situation is a poster child for anti-MI arguments. The usual suspect for a design like the one you've described is that the original author leaned on MI as a crutch that either prevented him from (or allowed him to avoid) learning better OO design practice. It's a catch 22. You need MI to mitigate the damage of a bad design most probably caused by reliance on MI.

      "Once you start down the dark path [of Multiple Inheritance], forever will it dominate your destiny, consume you it will..." - Yoda, Star Wars I

    22. Re:Multiple Inheritance by Anonymous Coward · · Score: 0

      Composition design pattern is a pain because you have to explicitly expose inner objects' methods. I actually wrote a Visual Studio add-in to do this automatically in C#, but it's still not the same as not having to do it in the first place (as even after the code is generated, you still have to maintain it).

  72. What about Perl/Tk? by ttfkam · · Score: 1

    That was a joke. ;-)

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:What about Perl/Tk? by Anonymous Coward · · Score: 0

      Works on more platforms than Java I suspect...

  73. Complexity by Xymor · · Score: 1

    Today it's possible to do anything with Java, but no one developer can do everything â" there simply aren't enough hours in the day to learn it all
    You obviously never heard of Grails framework.
  74. Ummm... so? by ttfkam · · Score: 1

    In Java, you can do so at compile/design (most of the time, that's when you should be doing it). JavaScript's great for small projects, but if you have multiple people working on a codebase, swapping things out at runtime tends to get messy very quickly.

    That is, unless each of your team members clearly and comprehensively documents everything they're doing. Then again, a coder that writes good documentation is more rare than a Windows developer who wishes they had fork().

    Quick and dirty coding techniques work for quick and dirty projects, not much else.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  75. Amen! by Weaselmancer · · Score: 2, Interesting

    You can get paid to write in it.

    Can I get an amen?

    It doesn't matter how super-zappo your favorite language is if it doesn't put food on the table. Your likes and dislikes don't figure into it when it comes to a job. See Maslow's hierarchy of needs for further clarification.

    Go to Careerbuilder and look up Java jobs. And while you're there look up .NET (which is pretty much Microsoft's Java). The jobs run 60/40 in favor of .NET. But there's dozens of them. High paying, too.

    I'm currently studying for my Java certification. Why? Because I love Java?

    Nope. Because it's good to have something to fall back on. I'll get a .NET cert too, as icky as that sounds. I have a family and I have to think of them first.

    --
    Weaselmancer
    rediculous.
    1. Re:Amen! by geekoid · · Score: 1

      So nobody would want those application built if Java didn't exist?
      Please.

      Java certification? ha. A few months ago I asked about 40-50 Java developers if they were certified by someone. 5 were, and they where Jr.s the rest weren't. These are all people making a lot of money working in companies that are making money.

      You might be better off using that time to network.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    2. Re:Amen! by Weaselmancer · · Score: 1

      So nobody would want those application built if Java didn't exist?

      It is what it is. And that's what people are running today. When you look for a job you don't get to do it in an ideal world.

      You might be better off using that time to network.

      Well, I'm not looking at the moment. The cert is really just a door opener, should the time come. I'm not a only-on-paper engineer. I have other qualifications much bigger than a dippy cert that Sun hands out. So I'm not sweating it much.

      --
      Weaselmancer
      rediculous.
    3. Re:Amen! by Marcus+Green · · Score: 1

      Be careful, an awful lot of over confident people do not pass the "dippy cert that Sun hands out". It's not rocket science but you do need to know the essentials very well.

    4. Re:Amen! by TemporalBeing · · Score: 1

      I'm currently studying for my Java certification. Why? Because I love Java?

      Nope. Because it's good to have something to fall back on. I'll get a .NET cert too, as icky as that sounds. I have a family and I have to think of them first.

      Glad your thinking of your family first, but realize this - a certification is nothing to fall back on. All it does is please a PHB. In the long run, it won't help you in your career, and it won't test you in any meaningful way. So save your money if you can. It won't make one lick of difference in how much money you make.

      That said, there is one certification I would recommend - the GIAC Secure Programming certification. Not so much for your employer as to train you and help you realize what you need to do to write secure programs. So it would be well worth it. They do have it for Java too.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  76. Doesnt matter? What a STUPID notion by alexborges · · Score: 1

    Of COURSE it matters. It matters a whole lot. The thing works out of the box and has been doing so for years. Security issues in JVM's are well ironed out.

    I do not like the language that much, but the fact is that you can build once, run anywhare and you can do it in GPL now.

    I think this is one more nail in microsoft's coffin: they will NEVER dominate the future. There will not be a dominant figure like microsoft was.

    This is a brave new day.

    --
    NO SIG
  77. stevie by Anonymous Coward · · Score: 0

    Need we say more than the following linl. Static languages have always ruled for a reason. It obviously won't be changing. What might change is if a new static language comes along that is truly offering something new. There is no such language now.

    http://www.ddj.com/development-tools/207401593

  78. 2001? by ttfkam · · Score: 1

    More like 1999. The Hotspot VM was introduced in 2000, and I consider that the real turning point for speed in the VM.

    If you mean Swing, the date's closer to 2004 or even more recent than that with regard to real graphics acceleration.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  79. Nothing for you to see here by ZiggyStardust1984 · · Score: 1

    please move along.

  80. Azureus is now "Vuze" (not "Zune") by KWTm · · Score: 1

    The only one I can think of off the top of my head is azureus (now zune)
    Actually, it's Vuze. Zune is the mirror reflection of "anuZ" and is a brown piece of crap from Microsoft.
    --
    404555974007725459910684486621289147856453481154 in hex is "You sank my Battleship?"
    [GPG key in journal]
  81. Using that argument by ttfkam · · Score: 1

    LISP is cool because it uses parentheses; therefore, if a language uses parentheses, it is cool.

    I agree that make is atrocious, but that has no bearing on any other technology just because it shares a single idiom.

    Correlation does not equal causation.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Using that argument by Anonymous Coward · · Score: 0

      Logic: You fail it.

      make's brain-damaged whitespace is one of the reasons why it's a horrible tool. Therefore, languages that require whitespace to differentiate syntax are not ideal.

      LISP is cool with parentheses, but what does your next statement have to do with that? It's the opposite of the make statement and is therefore invalid.

      (Disclaimer: I don't like Java.)

  82. Here's why it matters by Godji · · Score: 1

    Earlier today I visited some website which had a cool applet. I'm on a 64-bit system, and Firefox 3 complained about not having the plug-in. Hmm, I vaguely remember installing it long long ago. I had to fire up Konqueror, which worked. Don't ask me why.

    Now I could probably fix the problem with installing hte right package or doing 5-10 clicks in the right place, but I didn't have the time to bother.

    The point of an open Java is that with an open implementation with open plug-ins, I wouldn't have to do anything at all. It would be already integrated and distributed to me as I install my OS.

    One step further, web admins would know that it's integrated and working out of the box, so they wouldn't have to worry about it not being there. Ever. Such confidence in a technology (or lack thereof) can make it or break it in large numbers. This is why Flash is successful - because everyone knows you have it. (That is not strictly true, as it doesn't work in my Konqueror but does work in Firefox 3. Go figure.)

  83. eh who cares by matt_king · · Score: 1

    Use the language that best solves the problem at hand...and never trust anyone who only uses one programming language :-)

  84. No language matters by thc4k · · Score: 1

    except for Python, since it does it all better.

    But seriously, even C# is a better Java then itself. Java really pushed the whole language concept forwards, but i wouldnt consider it a modern language. But people have used Perl, PHP, etc. for all these years even though those are stupid languages as well.

    In the end, everyone has to use the language they deserve. Those who don't know any better could choose worse than Java ...

  85. Thanks to Java for NeoOffice by slackaddict · · Score: 1

    If it weren't for Java I wouldn't have NeoOffice for my Mac. ;-)

    --
    ConsultingFair.com
  86. "Java Doesn't Matter" - Trolling = More ad views. by Lemming+Mark · · Score: 1

    Seriously, when the editor of a site that bears advertising gratuitously trolls the readership (as opposed to raising legitimate alternate views, playing devil's advocate, suggesting topics for discussion) it does look like they're trying to generate more ad revenue through bad journalism. The editors aren't under any obligation to not submit trollish arcticles. The readers aren't under any obligation not to block ads when browsing those threads. Just a thought...

  87. no, you're wrong by speedtux · · Score: 1

    As for Sun, they have given far more to the open source community than most give them credit for. NFS anyone?

    Sun didn't "give" NFS to the open source community. Rather, open source operating systems had to start re-implementing it from scratch. Sun only open sourced it after it stopped mattering. That's adding insult to injury, and it's a recurring pattern with Sun.

    There are more examples, but just for a moment wrap your head around the concept of what if Sun never released the specs to NFS.

    We'd be a whole lot better off: NFSv3 and earlier is a piece of shit: it's insecure, unsafe, unreliable, hard to manage, and inefficient.

    And Sun certainly didn't release NFS in order for open source operating sytems to clone it.

    What would the BSDs and Linux use to map file shares? CIFS/SMB aka Samba?

    Even that would have been better. SMB actually works pretty well with Linux these days. Or we might be using AFS or any of a number of other network file systems. Actually, most likely, we'd probably be using WebDAV.

    1. Re:no, you're wrong by ttfkam · · Score: 5, Insightful

      If there were better alternatives to NFS, why didn't people use them or create newer, better ones? With all the faults of NFS, I don't know of alternatives that magically make all of those problems go away. Locking on remote resources that you want to be performant is a hard problem. WebDAV certainly doesn't solve that problem. And speaking of WebDAV, how would that have solved the NFS problem when it hadn't even been invented yet? Nor had HTTP 1.1 for that matter. Nor had HTTP 1.0 for that matter. Nor had XML, which it uses for metadata.

      Saying that WebDAV or AFS should have been used back in the heyday of NFS sounds like someone suggesting that DOS shouldn't have been used in 1981 because Linux would be created ten years later. You could certainly give other examples to replace DOS in '81 like CP/M, but the fact that you don't realize that NFS was first leads me to believe you are too young to remember what it was like. To give you an idea, an implementation of AFS was only released as open source in 2000 by IBM. Where were the alternatives before then?

      Answer: there weren't any good ones. And speaking of Samba, unlike CIFS/SMB, the NFS docs that Sun released actually matched up well with the protocol unlike what Microsoft released and Samba reverse engineered.

      FYI: "NFS v4 (RFC 3010, December 2000; revised in RFC 3530, April 2003), influenced by AFS and CIFS, includes performance improvements, mandates strong security, and introduces a stateful protocol. Version 4 became the first version developed with the Internet Engineering Task Force (IETF) after Sun Microsystems handed over the development of the NFS protocols." - Wikipedia

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    2. Re:no, you're wrong by speedtux · · Score: 1

      Stop bullshitting and avoiding the issue. You claimed that "As for Sun, they have given far more to the open source community than most give them credit for. NFS anyone?" The fact is that during its first two decades, NFS was proprietary, insecure, inefficient, and hard to administer.

      NFS v4 is irrelevant; as you yourself noted, it's a joint effort. And it isn't really NFS even.

      When it comes to NFS, there is nothing to be grateful for.

      I'm sorry you don't know the alternatives, but there were plenty. Sun just succeeded in killing most of them.

    3. Re:no, you're wrong by ckaminski · · Score: 1

      Well, I came into it in 1994, NFS was already king of the land, and Solaris/SUNOS wasn't. And I really don't get your "hard to administer" bit. If your UID/GIDs are set properly, no big deal... NFS mounts aren't any worse than the myriad of other text file edits that have to be made on *nix hosts.

      I guess I'm curious, not trying to start a war or anything...

    4. Re:no, you're wrong by speedtux · · Score: 1

      I guess I'm curious, not trying to start a war or anything...

      I don't think it's worth debating the technical merits of NFS v1-3 again; it is, thankfully, dead. I'm just saying that Sun didn't give NFS to the open source community and we have nothing to be grateful there. Open source implemented NFS without significant support from Sun, and did so because NFS was a de-facto standard.

    5. Re:no, you're wrong by ToasterMonkey · · Score: 1

      what if Sun never released the specs to NFS

      Sun didn't "give" NFS to the open source community. Rather, open source operating systems had to start re-implementing it from scratch.

      Implemented from scratch as in implemented using the specs that were released?
      Duh?

      And Sun certainly didn't release NFS in order for open source operating sytems to clone it.

      They didn't clone it, they implemented it... which would be the point of releasing the specs.

      Actually, most likely, we'd probably be using WebDAV

      Ok, I give up, you have no fucking clue what a networked filesystem is.

    6. Re:no, you're wrong by ttfkam · · Score: 1

      But you still haven't listed alternatives available at that time. If not NFS, then what alternatives AVAILABLE AT THAT TIME?

      As for NFS being a de-facto standard, how did that happen? Did other systems have to reverse engineer the protocol -- as was the case with SMB, at least with regards to compatibility with Windows, its most prominent user -- or did Sun publish specs that others could realistically implement?

      Many times, I consider documentation and clear specs more important than code. Almost anyone can hike with a map. Far fewer can without a map. And fewer still can make a map.

      The map that Sun gave everyone may have had flaws and inaccuracies, but it was still better than not having a map in the first place.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    7. Re:no, you're wrong by speedtux · · Score: 1

      But you still haven't listed alternatives available at that time. If not NFS, then what alternatives AVAILABLE AT THAT TIME?

      What does that have to do with whether we should be grateful to Sun for their supposed open source contributions?

      But if you must know, AFS, CODA, and 9P were reasonable alternatives in the late 80's. DEC, Xerox, Symbolics, IBM, and others had yet other network file systems.

      The map that Sun gave everyone may have had flaws and inaccuracies, but it was still better than not having a map in the first place.

      There were dozens of network file systems being developed at the time. The only reason NFS won was because Sun shipped it with every workstation and there was no easy way to replace it.

      Sun's main contribution was statelessness, which turned out to be a complete disaster, and which they finally abandoned in NFS v4. They also built a bunch of general mechanisms (RPC, XDR, etc.), which turned out to be useless.

  88. Interesting point by ttfkam · · Score: 4, Insightful

    And if code bases never changed, I might agree with you. However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity.

    When interfaces collide, there is no issue. If a method is added to a superclass in single-inheritance, it rarely affects the subclass unless that subclass is too tightly coupled with private variables (the implementation) of the superclass; you'd be hosed with any change in the superclass.

    MI may result in slightly fewer lines of code, but it makes for code that's harder to understand and more brittle in the long run. In short, it's little more than syntactic sugar with no programmatic benefits but several drawbacks with regard to complexity.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Interesting point by Anonymous Coward · · Score: 0

      However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity.

      No you don't. You use a pair of classes to rename the method in old C++ or a rename operation for which I do not remember the keyword in new C++.

      Oh, and MI is the only sensible answer to the problem of trying to extend somebody else's GUI framework to add core features it is missing.

    2. Re:Interesting point by mr_e_cat · · Score: 1

      However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity. When interfaces collide, there is no issue. If a method is added to a superclass in single-inheritance, it rarely affects the subclass unless that subclass is too tightly coupled with private variables (the implementation) of the superclass; you'd be hosed with any change in the superclass.

      I dunno. Maybe the whole thing is a little too complicated. You could do the same thing with a few functions and while loops.

    3. Re:Interesting point by master_p · · Score: 1

      I prefer to have to deal with the rare case of name collision between two base classes' methods than having to implement the same code over and over using interfaces. The benefits of MI is less lines of code, less typing, less programming. Complexity is minimal.

    4. Re:Interesting point by ttfkam · · Score: 1

      "Complexity is minimal."

      Most of the world who can code C++ would disagree with you. As for "implementing the same code over and over using interfaces," the point of interfaces is to decouple the implementation from the interface, which has maintainability and flexibility advantages that far outweigh a little extra typing during the design phase of your project.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    5. Re:Interesting point by Darrenor64 · · Score: 1

      Maybe you're using the wrong kind of GUI framework?

    6. Re:Interesting point by master_p · · Score: 1

      "Most of the world who can code C++ would disagree with you."

      That multiple inheritance is so complex as to become unmanageable is just fud. Don't follow the sheep. Have you tried it yourself? there is nothing complex at all.

      "the point of interfaces is to decouple the implementation from the interface, which has maintainability and flexibility advantages that far outweigh a little extra typing during the design phase of your project."

      You can always decouple the interface from the implementation using multiple inheritance, but when you want to share implementation details, you can't do that with interfaces. So multiple inheritance is a superset of interfaces, and thus better.

      "a little extra typing during the design phase of your project"

      It's not a little extra typing. Sometimes it's a lot of typing.

    7. Re:Interesting point by Anonymous Coward · · Score: 0

      Ever heard of the 'using' statement--in C++, it resolves such ambiguity.

  89. bullshit by speedtux · · Score: 1

    Furthermore, I don't care what anyone says about .NET/Mono. It is a closed Microsoft technology that Mono will perpetually play catch-up to. It cannot replace what (Open) Java has to offer. .NET is only a small part of Mono. Mono is no more a "closed Microsoft technology" because you can optionally install .NET compatible libraries on it, than Linux is a "closed Microsoft technology" because you can optionally install Wine on it.

    1. Re:Bullshit by mehemiah · · Score: 1

      or you can realize that the block delemeter is :
      what i mean is. If you ever end a line with ':' you're editor should indent subsequent lines untill you go back an indent level on a line. Autoindent in most editors will respect indenting just because you've manually indented the line before.

    2. Re:Bullshit by Abcd1234 · · Score: 5, Insightful

      Once you have the region marked out, most editors can indent that region for you.

      Really! Okay, here's some code:

      print "Hello"
      print "World"

      Now, I want you to insert the statement 'if (true):' at the top of that code, such that the print statements execute within the context of the if statement, and I want you to use the editor to indent the code. Hey, you know what, don't bother, I'll show you what you get:

      if (true):
              print i
      print i + 1

      But, of course, that's not what I wanted at all. I wanted this:

      if (true):
              print i
              print i + 1

      The problem is, the editor has no idea what I want because, without understanding the semantics of the code, the fact that blocks aren't properly delimited means the editor can only guess as to the correct indentation for a given hunk of code.

      Of course, this is a very simple example. But it also doesn't even approach the sheer hell that is refactoring larger bodies of Python code.

    3. Re:Bullshit by Abcd1234 · · Score: 1

      No, that's the block *start* delimiter. There is no end delimiter. Which is my entire point.

      Let me guess... you've never refactored code before?

    4. Re:bullshit by jfbilodeau · · Score: 1

      Though Mono is a fine project, I'm afraid that it will forever be stuck in the shadow of Microsoft.

      Personally, I find it unfortunate that Mono strives to implement the CLI and CLS standard that is (let's be honest) controlled by Microsoft.

      No matter which direction Mono takes, you can bet that Microsoft will just continue to plow it's own way, ignoring anything innovation Mono brings forth.

      --
      Goodbye Slashdot. You've changed.
    5. Re:bullshit by Anonymous Coward · · Score: 0

      Yep, Mono is the new wine.

      Forever playing catch up.

    6. Re:bullshit by speedtux · · Score: 1

      Though Mono is a fine project, I'm afraid that it will forever be stuck in the shadow of Microsoft.

      Only because people like you keep spreading FUD.

      Personally, I find it unfortunate that Mono strives to implement the CLI and CLS standard that is (let's be honest) controlled by Microsoft.

      What does it matter? UNIX was controlled by AT&T. AT&T now may look like a bunch of losers, but in the 1980's, they were still the monopoly and ready to sue everybody and anybody. Did that matter for Linux? No.

      No matter which direction Mono takes, you can bet that Microsoft will just continue to plow it's own way, ignoring anything innovation Mono brings forth.

      What difference does that make? None of the Linux desktop applications written in Mono are based on .NET

      I think Java people are confused about this because Sun has damaged their brains. With Java it actually matters what Sun does; with Mono, it doesn't matter what Microsoft does. And the fact that what Sun does with Java sucks so much is reason alone to prefer Mono.

    7. Re:Bullshit by Anonymous Coward · · Score: 0
      Hey, you were comparing Python with some other language that has block delimiters, such as C. Let's assume you mean C.

      You were talking about wrapping an if() {...} around a region, right? In order to do that with C, you must: (a) find the first line in the region and insert "{" before it; and (b) find the last line in the region and insert "}" after it.

      Are you following me so far, or am I going too fast for you?

      Python does not suffer in comparison, since you need to find the first and last lines of the region anyway: just select the region and (in Emacs) type C-x C-i to insert one tab in front of each line in the region. Maybe that's too difficult for you to understand.

    8. Re:Bullshit by Abcd1234 · · Score: 4, Insightful

      Ugh, apparently I need to choose a more explicit example, as you're too thick to understand. Let's say I have this:

      if (true):
              print "Hello World"

      for i in range(1,10):
              print i
              print i + 1

      Now, insert the for loop into the if statement, before print statement, and use the editor to reindent the block. And good luck.

      Meanwhile, with C, I'd have:

      if (1) {
              printf("Hello World\n");
      }

      for (i = 0; i 10; i++) {
              printf("%d\n", i);
              printf("%d\n", i + 1);
      }

      I could then just copy the for loop, past it into the if block, get the editor to reindent, and voila, the code is correct.

      *Now* do you get it? Please god, say you get it...

    9. Re:Bullshit by fredrik70 · · Score: 2, Insightful

      ok,wasting all mods points on this, but what the heck...
      In python indentation is part of the actual language construct, it forces you to write readable, well indented code as it is needed, as part of the langage itself, in order to make the program work as intended. This is actually a feature in my opinion. i felt like you when I started wtiting python apps, that this whitespace business was something potentially dodgy, but it actually wasn't such a hard thing at all to get used to. and after a while it's actually feel really natural.

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    10. Re:Bullshit by Kidbro · · Score: 2, Informative

      What editor are you using? It seems to be lacking a bit, feature wise.

      In C:
      - You cut the block.
      - You paste it
      - You mark the entire if-block
      - You ask the editor to reindent it

      In Python:
      - You cut the block
      - You paste it
      - You mark the pasted section (unless your editor has a feature to paste & mark, in which this step is unnecessary)
      - You indent/redent the marked block to wanted level.

      It's the same amount of equally complicated maneuvers. Unless you have an editor with the feature I spoke of, in which case it is one less in Python.

      Seriously, the white space thing annoyed me as well... for roughly two days. Six years of professional Python programming later, I cringe every time I run into code written in a language that wastes half its characters on redundant information (aka visual noise).

    11. Re:Bullshit by Anonymous Coward · · Score: 0

      Yep, I was going too fast for you.

      Do you understand the Emacs command "indent-rigidly", which is bound to C-x C-i (control-x control-i)? I explained what it does in my previous message, but that paragraph clearly went over your head.

      Your Python example: easy to do in Emacs. Just select the for-loop, then type C-x C-i. That's it. Voila:

      if (true):
              print "Hello World"

              for i in range(1,10):
                      print i
                      print i + 1

      No more effort needed than in your C example, where you have to insert the "{" and "}" in the appropriate places. Which is what I have been saying from the start, and what you have obviously not understood.

    12. Re:Bullshit by Anonymous Coward · · Score: 0

      Insightful? Hardly. The given example is simplified to the point it no longer reflects what is found in real code.

      Try this highly complicated counter-example:

          do( something )
          do( something, more )
          and( yet, more )
          but( maybe, not, this )

      Now we apply your condition to the second and third statements. We add it before the second statement and reindent:

          do( something )
          if True:
              do( something, more )
          and( yet, more )
          but( maybe, not, this )

      Gee, the editor indented the third statement "wrong". Well, surely using a language with block delineators would have fixed this right up!

          void main( void ) {
              do( something );
              do( something, more );
              and( yet, more );
              but( maybe, not, this );
          }

      Now we add the condition and reindent:

          void main( void ) {
              do( something );
              if (True)
                  do( something, more );
              and( yet, more );
              but( maybe, not, this );
          }

      Jinkies! The editor *still* got it wrong! I typed all those extra characters, and it still didn't work. Block delineators must suck.

      See the problem? The editor "understanding the semantics of the code" has *nothing* to do with it. Block markers "delineate" (i.e., group) related statements. If you have a pile of statements in a group (block), and then want to break only *some* of them into a subgroup, there is no way *any* language (or editor) can do it for you automatically. Unless the subgroup is already delineated--and why would it be, unless you're in the habit of putting arbitrary blocks all over your code--block delineators don't help.

      You *are* using the block indent and dedent functions of the editor, right? You're not just hitting TAB on each line? If you don't like Python-style blocking, fine--but don't blame the language if you don't know how to use your editor properly.

    13. Re:Bullshit by Anonymous Coward · · Score: 0

      well, assuming you're contrasting python with java, using eclipse (a fairly common example).

      In java, to refactor that if statement, I'd probably do my if statement, put a squigly at the start, a squigly at the end, select the whole block and invoke auto format.

      In python, using eclipse, I'd put the if at the start, select the block, and hit tab once...

      Where is your problem there?

      Large bodies may be a problem, but you've only given a small body example, and from what I can see it's an extremely poor example that doesn't provide a contrast.

    14. Re:Bullshit by Abcd1234 · · Score: 1

      It's the same amount of equally complicated maneuvers.

      You didn't even run through my example, did you? Here, I'll do it for you, and the results are as follows (this is with emacs22... I'm typically a Vim guy, and it does even worse):

        if (true):
        for i in range(1,10):
                print i
                print i + 1
                print "Hello World"

      ie, it's *wrong* (I ran indent-rigidly, which another poster suggested). Why? Because, after pasting the for loop in, the editor simply *can not* know how to properly indent the block of code. Let me repeat that, it *can't know*. Why? Because the syntax doesn't provide the necessary information to understand the structure of the code. The best it could do (and this is what I expected... yeah, it did *worse* than I'd hoped) is:

      if (true):
            for i in range(1,10):
                    print i
                    print i + 1
                    print "Hello World"

      Which is still wrong. So now I have to go and manually reindent everything, and worse, I have to make sure I get the indentation levels right, otherwise, the *semantics* of my code are wrong. Of course, in this example, that's pretty easy, but the minute you're dealing with more than a few lines of code, and more then a single lexical level, things get awfully hairy awfully fast.

      BTW, I keep harping on this because I've developed my share of Python code, and this is exactly what turned me away from the language (I tend to develop iteratively, constantly refactoring my design as new requirements come to light, and guess what... Python is not easy code to refactor, for precisely this reason).

    15. Re:Bullshit by prockcore · · Score: 1

      Here's the example I always use:


      if blah:
            do_stuff()
            if more_blah:
                  do_something()
                  do_something_else()
            else:
                  do_another_thing
      # do_colour_thing #uncomment if you're british

      You have no way of knowing what level that do_colour_thing is supposed to be at.

      Even funnier, I have 4 spaces between the pound and the code, but slashdot collapses the spacing because spacing is only important at the beginning of the line.

    16. Re:Bullshit by Abcd1234 · · Score: 1

      Umm, you didn't wrap the if contents in curlies. That's your own fault for not indicating to the editor what you meant. Had you done that, the editor would have done the right thing, and everything would've been fine. And, luckily, C gives you the choice. Python doesn't even give you that much. Which is my entire point, which you so clearly missed.

    17. Re:Bullshit by Abcd1234 · · Score: 2, Insightful

      You didn't follow my example. I said before the print statement, not after. And the result, using your emacs command, is as follows:

        if (true):
        for i in range(1,10):
                print i
                print i + 1
                print "Hello World"

      Which is surprisingly terrible. I had expected to at least do this:

        if (true):
                for i in range(1,10):
                        print i
                        print i + 1
                        print "Hello World"

      Do you get it now? In a case like this, the editor simply cannot know that the last print statement doesn't belong in the for loop. So now, not only is my code improperly indented, it's actually *wrong*.

      And your continued attempt to bring up the need to wrap code in curly braces entirely misses the point. See, in C, as long as I know where the beginning and ending of the block is, I can place the braces in the right place, and I know that my code is semantically correct. Get the editor to indent it for me, and it's still semantically correct.

      But in the above example, not only did the editor indent the code wrong, the *semantics* are wrong. That means that, every time I move a block and reindent with the editor, I have to check every damn line of code, just to make sure it didn't get confused because, as I've said over and over, Python doesn't provide sufficient hints to the editor regarding where blocks start and end, and so it *can't* know how to do the right thing.

    18. Re:Bullshit by pimpimpim · · Score: 2, Insightful
      I understand your point, really, you lose that part of editor functionality. But you also gain the added insight in your code that you can see very quickly and with 100% confidence at what level of indentation a piece of code is.

      Therefore, in practice, I have found the indentation issue not to be a problem. In my eyes, python's main issue are the messages at program crashes. They are uninformative, and sometimes even missing. That and several other factors seem to indicate some remaining immaturity of the code parser, but for the rest, python really is a fast and effective way to program in OO. I see it as a kind of perl for OO problems. (I know that perl has OO, but it's never as integrated as in python). There are many things that can be solved with perl, and there many things you shouldn't even try with perl. Same goes for python.

      --
      molmod.com - computing tips from a molecular modeling
    19. Re:Bullshit by Abcd1234 · · Score: 2, Insightful

      understand your point, really, you lose that part of editor functionality.

      Ah, but it's more than that. The real point is that, if the editor can't figure out what code belongs where, that means *I'm* far more likely to mess it up. After all, missing a single tab can completely change the semantics of a block of code. IOW, Python increases the chances I'll mess up, and makes my job as a programmer *far* more tedious and irritating, just so it can force a particular formatting style on me. Thanks, but no thanks.

      But you also gain the added insight in your code that you can see very quickly and with 100% confidence at what level of indentation a piece of code is.

      Or you could let the editor indent the code properly and get the *exact* same benefits without fear that you accidentally mess up the semantics of your code because you misread something.

      Heck, even if Python had both significant whitespace *and* a block terminator, I'd at least be satisfied. Why they omitted this, I have no idea, but it really strikes me as a glaring, pointless defect that just increases the odds that you can screw things up.

      As for the rest, I couldn't agree more. But the significant whitespace thing really does actively keep me away from the language... it's just not worth all the trouble it creates for me.

      Personally, given my choice, I'd go with a language similar to Ruby if I needed an "OO Perl"... though, my Smalltalk bias means Ruby annoys me in countless other ways (not to mention it's more glaring defects, such as it's dismal speed). :)

    20. Re:Bullshit by The-Trav-Man · · Score: 1

      It's not everyone else's fault if you can't express your examples clearly. Ease up on the rage, we're all friends here.

      In the clarified example, you are correct, emacs/vim may not be able figure it out for you.

      If you're using a python specific editor, it could have a function that takes either the selected region, or the most recently pasted region and indents it to match the context into which it was pasted. That's just how I'd solve that particular problem, I don't know if it's out there.

      regardless of your specific example, your overall point has a lot of validity to it.
      Python is harder for editors to deal with than a lot of language.

      This generally leads to the editors being able to take less load off the programmer, which means more effort to code in.

      I haven't worked on large projects in python before. The largest being only about a thousand or two lines of code.
      At least at that scale I've been pretty pleased with python and not had any problem with the white spacing at all.
      In fact, at that scale I find the white spacing style better than delimited blocks.

      Ignoring the problems that you may or may not encounter at larger scales (as I can't comment on them at all) being really good at programs that are a few thousand lines of code is not something to sneeze at, you can do a lot in a few thousand lines.

    21. Re:Bullshit by kjots · · Score: 1

      ... it forces you to write readable, well indented code ...

      Decent programmers do not require features in the language in order to make their code readable. Conversely, nothing will help an inadequate programmer write readable code; it's something that comes with experience.

      Using whitespaces as a block delimiter is a stupid, stupid idea, and anyone who thinks it isn't is a stupid, stupid programmer.

      Come back when you have a few decades as a maintenance programmer behind you and tell me otherwise.

    22. Re:Bullshit by smellotron · · Score: 1

      I get what you're saying here... gg=G. I think this is just an issue of a lack of automatic indent-on-paste in vim. It would be very reasonable for vim to recognize "hey, I know this is Python code, so when I copy-and-paste, I should adjust the minimum indent-level to match the current indent level". I'm no vim-guru, but that makes more sense than forcing a re-indent after the paste action. In fact, I'd go so far as to say that the braces-style reindent is only required because indenting can't be inferred on paste in a language like C/C++/Java/Javascript/...

    23. Re:Bullshit by Alpha830RulZ · · Score: 1

      No, that's the block *start* delimiter. There is no end delimiter.

      Sure there is. It's the next piece of code structure. There is nothing stopping an editor from providing help. I believe NetBeans for one does, though I haven't tried it. The problems that I have used python for don't typically lend themselves to large file sizes.

      I think most folks don't find the indentation style that restricting. If you do, that's cool. Java and python work pretty well together in my world, you might try python again, if you do any server side stuff.

      --
      I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
    24. Re:Bullshit by m50d · · Score: 1
      Ah, but it's more than that. The real point is that, if the editor can't figure out what code belongs where, that means *I'm* far more likely to mess it up. After all, missing a single tab can completely change the semantics of a block of code.

      No; you have to miss the tabs for the whole block. Which is better than being able to misplace a brace and completely change the semantics of a block of code.

      Or you could let the editor indent the code properly and get the *exact* same benefits without fear that you accidentally mess up the semantics of your code because you misread something.

      Well no, because you have more chance of messing it up when writing it. Suppose you accidentally included a semicolon after a for(...); you'd then get a nicely indented block which was only executed once. That's what the python way stops from happening.

      Heck, even if Python had both significant whitespace *and* a block terminator, I'd at least be satisfied. Why they omitted this, I have no idea, but it really strikes me as a glaring, pointless defect that just increases the odds that you can screw things up.

      There's a standard way to do block delimiters in comments and things can fix the indentation based on that, if you really want to (python ships with a script called something like mkindent.py). But if you use the language like that you'll hate it. Try using python the way you're meant to for a bit; just one small or medium project. You might find you adjust and like it.

      --
      I am trolling
    25. Re:Bullshit by julesh · · Score: 1

      Ugh, apparently I need to choose a more explicit example, as you're too thick to understand. Let's say I have this:

      if (true):
                      print "Hello World"

      for i in range(1,10):
                      print i
                      print i + 1

      Now, insert the for loop into the if statement, before print statement, and use the editor to reindent the block. And good luck.

      OK. I open up SlickEdit, and start a new Python file. I paste your example code into it. I do some quick fixes that wouldn't be necessary if I hadn't pasted code from a web site (converting your spaces to tabs). I then put my cursor on 'for', Edit/Select/Code block, and press tab. Done.

    26. Re:bullshit by Anonymous Coward · · Score: 0

      Yep, Mono is the new wine.

      More FUD from Sun's corporate shills and Java fanboys.

      What's your problem? Java not working out for you? Or are you simply too dumb to understand what Mono is?

    27. Re:bullshit by Anonymous Coward · · Score: 0

      Then would you care to elaborate? Because there's so much MS FUD flying about that it's impossible to see what Mono fanboys are so excited about.

    28. Re:Bullshit by slartibart · · Score: 1

      Ugh, apparently I need to choose a more explicit example, as you're too thick to understand. Let's say I have this:

      if (true): print "Hello World"

      for i in range(1,10): print i print i + 1

      Now, insert the for loop into the if statement, before print statement, and use the editor to reindent the block. And good luck.

      Meanwhile, with C, I'd have:

      if (1) { printf("Hello World\n"); }

      for (i = 0; i 10; i++) { printf("%d\n", i); printf("%d\n", i + 1); }

      I could then just copy the for loop, past it into the if block, get the editor to reindent, and voila, the code is correct.

      *Now* do you get it? Please god, say you get it...

      They don't "get it" because you are seeing a problem that isn't there. You copy the for loop, paste it where you want it to go. Then you hit tab until it's at the right indent level. In most editors that indents the block rather than replacing it with a tab character. I don't see why this is so difficult. In fact it's easier for the editor to handle than reading the entire file and stacking braces.

    29. Re:Bullshit by Anonymous Coward · · Score: 0

      I "got it" the first time, blockhead (jeez, you claim *I'm* too thick?). You were being a jerk and misrepresenting the problem, so I responded in kind.

      I doubt anyone's reading anymore, but what the hell--the horse is still twitching...

      You persist in misrepresenting the problem. The difference between your example and mine is that you introduced *unnecessary* block delineators around your if clause, just to compensate for what you might eventually do to the block. Remember my comment about strewing arbitrary groupings in the code? Bingo!

      "But one should always put curlies on blocks!" you might cry. Why is that? C-like languages have conventions like "always use curlies" precisely *because* they work around a trap in the language. Some languages consistently require block delimiters, and in those languages this problem never occurs. In languages with optional block delimiters you have to perform extra work (adding curlies) to make sure the grouping stays correct.

      The problem you were really complaining about, though, was synchronization between indentation and scope. You want to be able to move code around willy-nilly and have the editor re-establish proper indentation for you. In delimiter-required languages, auto-indent will always sync it up nicely. In delimiter-optional languages, it may or may not work, depending on how many extra delimiters you added initially. But in Python, the indentation *is* the scope, and by definition is always already in sync. See the problem?

      I understand your frustration--I really do--but the problem isn't the language. It's your process. In C you rely on a convention (always curly) and an editor function (auto-indent) to work around a language gotcha (optional delimiters) so the indentation stays consistent with the logic. The first three of these don't apply to Python, and the fourth is implicit, so it's little wonder your process is failing.

      The fundamental problem is that you're trying to use the wrong tool when moving code around. In Python you don't auto-indent whole functions, you indent blocks (regions) as you move them. Any Python editor worth it's salt has functions for this (e.g., in emacs, py-shift-region-right).

      I'll demonstrate in terms of your little challange:


      if (true):
              print "Hello World"

      for i in range(1,10):
              print i
              print i + 1

      Copy lines 4-6. Move to line 2, column 0. Paste. Indent the block just pasted (*not* the whole function). Voila, the code is correct.

      How was this hard again?

    30. Re:Bullshit by fredrik70 · · Score: 1

      people have been tending python code since the beginning of the 90's and personally I haven't heard anyone complaining about how hard it is to maintain the code base, rather the opposite. well, am working on my second decade as a programmer, however mostly with languages using curly brackets! ;-)

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    31. Re:Bullshit by Kidbro · · Score: 1

      You didn't even run through my example, did you?

      Yes I did.

      (I ran indent-rigidly, which another poster suggested).

      There's your mistake. Try py-shift-region-right next time (as it happens to be named in the python mode I'm using at least).

      Lots of time wasted explaining that it is impossible for an editor to handle something it definitely can. I'd be very, very surpried if vim can't as well.

      And yes, I do understand what you mean when you say that the syntax does not give enough information to the editor. Your point is, however, false! You see, you do not need to reindent the entire file. You only need to adjust the just pasted section. And you know that the section is internally consistent with its own indentation level, and you know that all the surrounding code is consistent with itself (otherwise the code would, by definition, already be broken - as broken as java code with curly brackets in the wrong places (something which no editor could fix either, mind you)). So all you have to do is adjust the just pasted section of code the correct amount of times either left or right. Something i just let you know how to do in Emacs.

    32. Re:Bullshit by YourExperiment · · Score: 1

      Your example is irrelevant.

      In either language the two 'print' lines start out hard against the left margin, with no form of block delimiters around them.

      In Java, after you insert the 'if' statement, you need to put braces around the two 'print' lines in order to indicate how much of the code the 'if' statement applies to.

      In Python, after you insert the 'if' statement, you need to select the two 'print' lines and indent them, in order to indicate how much of the code the 'if' statement applies to.

      These actions are functionally identical.

    33. Re:Bullshit by Anonymous Coward · · Score: 0

      you can see very quickly and with 100% confidence at what level of indentation a piece of code is

      Or if someone makes the mistake of trying to share their code with me, I can see very quickly the whitespace is mangled and have 0% confidence that what I'm running does what they meant.

      Making indentation significant was clever. Making the three characters least likely to arrive intact significant was idiotic. Python needs built in urldecode or something.

  90. First complaint is BS by PaulMorel · · Score: 1

    That first complaint is nonsense, as it can equally be applied to ANY language. The same thing could be said of .Net or C or C++. No single programmer will ever learn to do everything in one language. Still, experts can learn how to do nearly everything in one language.

    That second complaint is trickier: "Second, and most important, even as Java has stretched outward to embrace more concepts and technologies â" adding APIs and language features as it goes â" newer, more lightweight tools have appeared that do most of what Java aims to do. And they often do it better"

    That is basically true.

    --
    burrocrisy
    and that would be what? Ruling by jackasses? Never has a slashdot misspelling been more apropos
  91. Arbitrary by ttfkam · · Score: 2, Informative

    You have limits in any language whether they be the inclusion of a semicolon at the end of a statement, the enclosure of a conditional in parentheses, or curly braces to denote scope.

    To say that those constructs built into languages are acceptable but enforced indentation is not is an arbitrary distinction. It has nothing to do with its worth or lack thereof. You have decided what you prefer and are fitting an argument to that conclusion. Philosophy does not enter into it.

    A computer doesn't care whether your programming language enforces indentation. All the computer needs is an ordered sequence of bits and bytes in just the right combination to return a desired output. Computer languages were meant to be a human-readable alternative -- their sole reason for existence. If you don't think that the indentation makes the code readable, that's a valid argument though I would disagree with it.

    However, I don't believe you have a "philosophical problem" with indentation on the basis of enforcement. Enforcement has nothing to do with readability, and readability is all that really matters with a language. Anything else is personal preference, which is perfectly valid, just don't frame it in the guise of a more noble cause.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Arbitrary by kjots · · Score: 1

      Your argument is lame and by extension so are you. Try saying some of that shit during a job interview sometime - I can tell you, if I was sitting on the other side of the table you would be out on your ass.

      Writing readable code is a discipline, and as such it requires a commitment from the programmer. A language that engages in 'hand-holding' techniques (a criticism traditionally directed at Pascal and it's derivatives) will reduce the overall skill of a programmer versus a language that, so to speak, throws you to the wolves.

      In other words, a long-term Python developer will be by definition a lesser programmer then a long-term C-style-language developer, for the simple reason they they have never needed to develop a discipline for writing readable code. The language took care of it for them so they didn't have to.

      By the way, I write in assembly for kicks. That's commitment!

    2. Re:Arbitrary by ttfkam · · Score: 1

      On the contrary, I find that many Java programmers write their C++ using the style learned from Java. I also find that C coders tend write their Java like C, ignoring the standard Java style guides.

      To say that learning with a language that enforces style will have no lasting effects once they leave that language is ridiculous.

      Writing the following:

      foo->getBar() was C++ likely written by a coder who started in Java.

      class Foo { int my_var; } is an example of the opposite.

      These examples are common all over the place, both at work from new employees to gobs and gobs of open source code on the net.

      As for me, I know x86 and MIPS assembly, but since I don't write device drivers, I haven't had much use for it in general. Rather than spending my free time pushing and popping the memory stack, I prefer to write apps that actually make other people's lives easier.

      But whatever floats your boat. For the record, I have said similar things during job interviews. They lead to interesting discussions and other topics related to tech. That said, I also adapt my code formatting to the language and, more importantly, to whatever style the team I join has decided on. But if I were in an interview with someone who claimed code clarity was akin to 'hand holding,' I likely would look elsewhere for work barring special circumstances.

      Computers don't care if whitespace is present or not. Only humans find it easier to parse. Therefore a stylistic change to code does not affect the code's efficiency or efficacy. If you, as a coder, cannot adapt to a stylistic change, you are showing signs of inflexibility. Inflexibility is not an attribute I would be looking for in a coder.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
  92. And stand-alone's can rival webapps by Anonymous Coward · · Score: 0

    This is also a very good example (IMO) for solid desktop applications in Java, what about an online UML editor ? If your browser supports Java natively just click the link and fire the ArgoUML application. Presto; an instant UML editor which can also be solely used online.

  93. Re:Java's Place In the World by Mr.+Stibbons · · Score: 1

    ... bloated in memory usage and CPU usage in comparison to cleaner C# or C++ ...

    While I won't entirely deny that charge, I will say that Java's memory requirements have diminished (slightly) with improvements to the JVM. But more important than that, is the fact that most reasonably new desktop systems have 2-3 gigabytes worth of memory, and several hundred gigabytes of hd space. The extra memory overhead simply isn't a very convincing reason to avoid Java any longer.
    --
    I was going to have a amazingly funny and clever sig, but I forgot, and failed miserably.
  94. Bullshit by Anonymous Coward · · Score: 1, Informative
    Except, of course, that Python doesn't provide enough context for an editor to properly indent blocks automatically, as there's no proper block delimiters. So, if I, for example, need to change the level of nesting in an existing block of code for some reason (say, introducing an if statement, or factoring some code out into a separate function), the editor can't help me to ensure I get the indentation level right. And in Python, incorrect indentation means incorrect semantics.

    Nonsense. If you're wrapping an if() {...} around a region of code, you still have to know where to insert the curly brackets. Once you have the region marked out, most editors can indent that region for you. Even if the language is Python. For example, in Emacs, you select the region, then type C-x C-i to indent it. Simple.

  95. Java is excellent by thetoadwarrior · · Score: 2, Informative

    I quite enjoy Java and find it to be a great language. My only complaint is that they fucked up java for web sites / apps.

    Why does java have to be some complicated, delicate and have 6 millions different ways to do something where as you can get on with developing something in PHP quite easily? Sure to make something great you need to know the html to go with PHP and javascript but you need to know those with java plus decide if you you are using struts, spring, seam, groovy, JSF, etc and, while knowing one may make it easier to transition into another job using something similar, it's still a pain compared to moving between PHP based development jobs.

    It is true that if you wanted to know everything about Java it would be impossible. You can't know it all and be excellent at it but there should only be three clear sides to it. The desktop app side, mobile and web.

    1. Re:Java is excellent by Shados · · Score: 2, Informative

      In Java you can just go and hack it up JSP style if you want, and it will be similar to PHP. The thing is, that way of doing thing sucks. It sucks in Java, it sucks in PERL, it sucks in PHP, it sucks, period. As with any serious application development, you need to structure things a bit. People don't agree on the best way, though in Java, the community is very oriented toward "There's the main way, and then there's other ways in case that doesn't work for you". In general, thats a MVC pattern like strut, a dependency injection/inversion of control container (spring), a persistance framework (hibernate). Then you have t he other stuff when that doesn't work for you (JSF for composite applications, for example).

      All languages that matter are like that. Ruby has Rails (package of the stuff I mentionned above), and when that doesn't work, there's a bunch of other frameworks. If you just go in straight PHP and go for it, you're doing it wrong, even from a PHP point of view. PHP has templating frameworks, object relational mappers, containers, etc, too. Lots and lots of them, and for a serious app, you need to pick too.

      The only difference, is that PHP is used for "quick and dirty" much more often, while Java is usually used for "enterprise/production scale development", so you'll more rarely see PHP devs using the frameworks, and more rarely see java devs going straight JSP.

      Thats it. And if you think developing real world application can be split up with desktop, mobile and web, you're leaving out 2 third of enterprise developments. Not everything ends up in the face of a user, and only a part of what actually does falls in those categories. What about services/deamons? Reporting processes? SOA middlewares? Business workflow processing? Messaging/Reliable systems (I'm not talking about MSN here, I'm talking about message queues). Java and .NET are 2 environments that deal with all of that, but even with everything they provide (much more than a single human can learn), they still don't even provide half of what we need in all situations (especially .NET, until 3.0).

    2. Re:Java is excellent by thetoadwarrior · · Score: 1

      One of Seam's main selling points is that the old ways are shit and that is true. Writing java for backing beans isn't exactly rocket science nor is writing the pages. So there is nothing wrong with doing things in a MVC way (you should do that with your PHP too). It's more the fact there is quite often too many configuration files and things simply are too delicate.

      I can understand only have one app on a live server but a developer can expect to have more than one on his own environment and that rarely works smoothly with Java. Nor should it take a significant amount of time to transfer something from one instance to another. It shouldn't take two people scanning over multiple files to fine where things are different. It's a huge waste of time that could be spent writing code.

  96. Java's not for me by Anonymous Coward · · Score: 0

    You see... Sun is a Fine company but personally I'll never use Java... it's horrific, huge and (and that's my point) targeted at managing replaceable units (read: inept coders). Allow me to explain: Java is the tool I'd want if I had to manage and oversee hundreds of expendable mediocre developers. I'm the CIO of my company (small 20ish people) and I'll always stick with C++, eventually scripting languages the like of Python. C++ is far more expressive *if* you master it. And there's niceness coming along with C++0X, the new standard. Java? No thanks. But thanks for ZFS!

  97. I'm a troll now! by John+Jamieson · · Score: 0, Redundant

    My original(parent) post is currently marked Troll. My bad, I forgot the obligitory "This is not a troll, but" line. lol

    Seriously though, I have a little time in perl, and I rarely script, so I am lazy and tend to want to default to it.
    Does that experience mean I should default to perl though? My perl is readable (ya sure, everyone thinks that), but when I have to read some of the stuff other write... Perl gives the person the power to write unreadable(bad?)code.

    Anyway, If I were to start over, OR if I had to do a lot of scripting... I would endevor to master Python instead.

    If the fact that I am not proud that I still write the odd line in Perl makes me a troll, then I hope we have a lot more trolls in this world!

  98. Do my eyes decieve me? by V!NCENT · · Score: 1

    Is there an article on /. that questions FLOSS?

    --
    Here be signatures
  99. Honest request by Anonymous Coward · · Score: 0

    twitter, would it be too much to ask to just stop doing things like these?. Why can't you stop trolling Slashdot with one hand and pretending to be a member of the community with the other?

  100. I Wouldn't Choose It Now by RAMMS+EIN · · Score: 1

    ``if Java really were released today, brand-new, would it be a tool you'd choose?''

    No, I wouldn't. Back in the day, I did. I didn't know much yet and Java was pitched as being the great new thing that did things the best way. I bought into the religion.

    Then I got disappointed. My programs were slow. The APIs didn't work the way I had expected them to work. It was needlessly verbose (Foo foo = new Foo()), needlessly ugly (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("something")))), and had sillyness like "Iterator iter = people.iterator(); while(iter.hasNext()) { Person person = (Person) iter.next(); ... }".

    Java has since improved. Since 1.5, it has been a lot better. But I have learned a lot more, as well.

    I now know that there are *lots* of programming languages. I now know that I like some of these languages much more than I do Java. I also know that for every shortcoming I percieve in Java, there is another language that does it better. And even things that Java does well are often matched or exceeded by other languages.

    I also know that, for all Java was touted as the Great New Thing, none of the things it "introduced" were actually new. It had all been done before. Of course, what was new was Java itself; the whole package. It lacked many things that other languages already had, and since then, a lot of time and effort has gone in designing and building things for Java that already existed for other languages and platforms.

    I feel bitter about Java. Not because I think it is absolutely terrible, because I think it is a fairly decent language with a lot of good ideas in it. But I feel bitter, because I feel it has wasted a lot of time and led us away from what could have been. We already had great languages, great platforms, and great tools. The hype around Java eclipsed (no pun intended) all that and got amazing numbers of talented people to write tools for Java, add great ideas from other languages to Java, etc. etc. I still don't think it's there yet, and that has everything to do with the shortcomings of Java as a language and misguided decisions by designers - in general, most things in the Javaverse are terribly over-engineered. So, instead of working with the great things we had and making them even better, we've spent our effort getting something mediocre on par with that. I feel Java has been a huge setback in that respect.

    On the other hand, Java _was_ actually an improvement for many. In that sense, I feel it, and its evangelists, deserve credit for _improving_ the world.

    It's really a mixed bag. But on the whole, I resent it. I'll work with it on ocacssion, but I won't choose it. Not if I have the freedom to choose something better suited to the task.

    --
    Please correct me if I got my facts wrong.
  101. More Like Epithets For Java Never Mattered by assertation · · Score: 1

    I remember when Java was a hot new language. Even then people had epithets for it. Microsoft and the open source community have always been the biggest Java haters. I think both groups hate it because Java wasn't theirs.

  102. It takes open sourcing to reach opinion leaders by Qbertino · · Score: 1

    It's basically a marketing ploy. Who acually looks at the Java VMs source? ... Right. ... To a certain extent, no body cares about licences, unless the experience lock-in or Win XP / Windows Fister getting pissy over some hardware changes. In a sense, MS has been actually drawing attention to its own EULAs since Win2K. With mostly negative effects.

    It takes open sourcing to reach opinion leaders. Java was taken for granted even before it went GPL, but now everybody know it will never go away. If Sun goes south, then IBM or some other company will pick it up without missing a step. It has fully moved from a product to being a technology.

    But I don't think open sourcing Java or not makes that much of a difference for Sun business wise. That's why I think it was best for them to GPL it. They have little to lose and quite some attention to gain. And attention they did gain. Sun is on the radar of a whole new generation of admins once again. They'd be my first pick if industry strength servers where needed.

    The industries opinion leaders all almost all Linux and OSS advocates. I actually don't know a single MS-oriented guy who has the last word in technology decisions. I *do* know MS people who admit that they don't know as much about computing as *nix people. The bottom line is: If nowadays you want to be taken for granted by developers that matter, you have to play ball with Open Source. Especially in technologies people are expected to develop against. Adobe, Sun, IBM, they all know this. MS is about to learn it. The hard way.

    --
    We suffer more in our imagination than in reality. - Seneca
  103. "Not enough hours in the day to learn it all..."? by ActusReus · · Score: 1

    I suspect (or at least hope!) that Taco was being a bit tongue-in-cheek with this entire post. A Perl guy criticizing another language's learning curve?!?

    Still, addressing the point at face-value, I fail to see how the large array of Java libraries and frameworks is a liability rather than an asset. Sure, nobody can learn ALL of them... but neither is anyone expected to. You learn the libraries and/or frameworks that are relevant to the task you are trying to accomplish. How is this worse (or even different) from the suggested alternative... learning entirely separately languages for each task? For all Java's issues with version compatibility, etc, at least learning that language gives you a common platform from which you can tackle almost any problem. You can pick and choose the libraries and frameworks that are best suited to the task at hand, and at least have the possible option of later integrating it with other Java code without having to go through pipes or services or some other loose-coupling technique.

    For the problems that Java does have, pretty much the only reason why they aren't shared by "newer, more lightweight" technologies is because those haven't been around long enough yet for version compatibility to even be a concern. For any given example of technology, check back with me in 5-10 years and let me know how its maturity lifecycle has compared with Java's.

  104. Mod parent funny! by Spy+der+Mann · · Score: 1

    Parent's link is GP's post :P

    1. Re:Mod parent funny! by snoyberg · · Score: 4, Funny

      Holy crap, you're right! I haven't seen that trick pulled since here.

      --
      Thank God for evolution.
  105. Cheap Karma for Sun by croftj · · Score: 1

    Since the OSS community now has a JRE which is certified for Java 6, a closed source Java is not worth nearly as much as it was. So now Sun isn't really losing much to make the real Java open sourced and they get to look like good guys in the OSS comunity.

    --
    -- Many men would appreciate a woman's mind more if they could fondle it
  106. open source or not by Aramil · · Score: 1

    It wont make it better for my Java exam tommorow :)

  107. Browsers and Vector Graphics by Digital_Quartz · · Score: 1

    > The only reason Flash succeeded was because web browsers didn't have vector graphic support ten years ago.

    Try drag and dropping an SVG file onto a Firefox 3 window. Browsers STILL don't support vector graphics.

    (And, for some totally strange reason, you can't drag and drop an SVG onto Safari under Windows either; you can drop it onto the address bar, but not onto the window itself).

    1. Re:Browsers and Vector Graphics by prockcore · · Score: 1

      Try drag and dropping an SVG file onto a Firefox 3 window. Browsers STILL don't support vector graphics.

      Works for me.

      http://www.croczilla.com/svg/samples/butterfly/butterfly.svg

      renders just fine in mozilla. Saving it to my desktop and dragging it back into firefox works too.

    2. Re:Browsers and Vector Graphics by Digital_Quartz · · Score: 1

      Hmm.. That's odd. If I go to the URL, it renders. If I save it to my desktop and drag it back, I get an "Opening butterfly.svg" dialog with options to "Open With: Internet Explorer" and "Save File".

      I had assumed from this that this was because SVG wasn't supported.

      There's no entry for SVG in the Options->Applications window. If I choose "Open With:" and browse to Firefox, it opens a new tab and re-displays the "Opening" dialog.

  108. Help by Anonymous Coward · · Score: 0

    I'm still new to programming, and I'd like to ask a question that I so far haven't been able to figure out:

    What exactly sets languages apart, insofar as one being more powerful than the other? Java > VB.net, C++ > Java, etc, etc.

  109. Some say Java's type system doesn't go far enough by Sits · · Score: 1

    ...and languages like SML or Haskell have this rigour within their type systems. Supposedly Scala (which uses the JVM) also has a rigorous type system but there's a language complexity price. Folks programming in Java can get around those problems by using "Good Engineering Principles" (see the "Static Typing's Paper Tigers" section) and if the Java folks don't need to go the whole hog on their type system...

  110. There's a simple reason for Java's successes by Anonymous Coward · · Score: 0

    and it's the same reason that's behind Java's failings.

    Java assumes that the programmer is a complete idiot, and the language knows better than you do. This has been a wildly successful technique, as it has allowed companies to hire massive armies of hacks with no real understanding of programming, and together they can produce apps that nearly work.

    And on the opposite side of the same coin, those programmers who actually are smarter than a compiler resent having to write reams of useless syntax just to tell Java "yes, I really meant to do what I said there."

  111. What about D? by weston · · Score: 1

    is that it remains the language of choice for real complex scientific and engineering challenges, especially time-critical/real-time systems, which the newer languages typically don't address well.

    I've been poking at the D programming language and started to wonder why it's not more widespread inside of this niche:

    http://en.wikipedia.org/wiki/D_(programming_language)

    Anyone know why?

  112. I saw this coming a mile away... by cowwoc2001 · · Score: 1

    The open-source crowd always plans the same cynical game: "I will boycott your product publicly until you open-source it. How *dare* you keep it closed-source?! ... what? You open-sourced it? ... hmm, well it doesn't really matter anymore, I'd rather use something else".

    Do me a favor, stop telling the world that the only reason people don't use X is because it's not open-source. Open-source is only a tiny fragment of what matters. This melodramatic fan-boy attitude ensure no one takes open-source advocates seriously.

  113. "Scripting" language? by weston · · Score: 1

    No. JavaScript is a scripting language, whereas Java is a full-fledged programming language.

    I've never particularly understood this distinction. What's the line? Is it whether or not you can allocate raw memory? Is it whether or not you're writing primary constructs in the language instead of operating on API/library exposed constructs?

    It can't be whether it's interpreted or not, because that has nothing to do with a language -- that's an implementation issue. Unless it's like Perl or D, where the language is defined by what's accepted by a given interpreter or compiler....

  114. GIL gets released at certain points! by PommeFritz · · Score: 1

    The GIL does get released at certain strategic points: when Python does I/O (or rather, waits for its completion) and when calling an extension module that releases it. In both cases multiple threads *can* run concurrently. It's mainly when the interpreter is executing byte code that only one thread at a time is active.

  115. To paraphrase: Does Java matter? by Anonymous Coward · · Score: 0

    To paraphrase: Does Java matter?

  116. maybe if slashcode was written is java.. by asv108 · · Score: 1

    It would actually have some new features. Instead, Slashcode is just a clusterfuck to maintain and enhance. PERL has its uses, but you don't see many people writing content management systems in PERL anymore. Hmmm, I wonder why...

  117. Correct by mkcmkc · · Score: 1

    Yes, that was my point.

    --
    "Not an actor, but he plays one on TV."
  118. Non-performance factors by mkcmkc · · Score: 1

    Well, the elegance and simplicity of comprehensions comes to mind. Frequently one line of Python can be used instead of the equivalent half-page of Java...

    --
    "Not an actor, but he plays one on TV."
    1. Re:Non-performance factors by Just+Some+Guy · · Score: 1

      That was the kind of stuff I was referring to when I said that writing Python was fun. See also: functional programming, decorators, trivially easy inheritance.

      --
      Dewey, what part of this looks like authorities should be involved?
  119. It Matters Because Sun Needs Open Source by Eskarel · · Score: 1
    From what I can see Sun, as well as IBM and probably to a lesser extent Oracle and probably Novell(no hardware from either of these guys yet) are trying to get into a situation where they can provide a complete packaged solution to enterprise(hardware, OS, web server, application server, database server, all from one vendor). That is to say they're trying to create a vertical monopoly.

    Under ordinary circumstances vertical monopolies tend to cause legal difficulties(Microsoft doesn't come close to having one, and they're horizontal monopoly is pretty much restricted to desktop computing and they've been sued a few times already). However if you open source your software then you can't possible be a monopoly because all your stuff is ideologically free.

    There's also the added bonus that free as in beer software can be used by smaller businesses who will then already be using your infrastructure when they become big companies who pay for support.

    Normally this would all just be a legal ploy, but Sun is also trying to play a game of catch up because despite being the authors of a lot of the standards that allow the other guys to play the game, their implementations have been pretty awful, so Sun needs to improve their software dramatically in a short period of time and they think that having open source developers will help them do that.

    Sun probably thinks that open sourcing java might help them get the developers they need.

  120. Matlab+Java by Anonymous Coward · · Score: 0


    I'm a PhD student in AI/statistical learning. In my field, we use Matlab a lot, and anyone who has used Matlab knows that it's ugly and slow, but the fact that you can step through the code and create a histogram of the data you're working with more than makes up for it.

    BUT it turns out that Matlab and Java are totally interoperable. You can write Java code in the Matlab interpreter and it will Just Work. Check out the following code, written on the Matlab command line:

    >> ll = java.util.LinkedList();
    >> ll.add('hello');
    >> ll.add('world');
    >> ll

    ll =

    [hello, world]

    So, this is one of the reasons I love Java.

  121. Open source java is important by velen · · Score: 1

    Open source Java does matter. We cannot rely on Sun to supply the JVM for all systems and I for one am sick of IBMs JDK, GNU's Java and Sun's Java each doing their own thing and fscking up the concept of portability.

  122. So, now you are feeding the trolls _in_ news body? by Anonymous Coward · · Score: 0

    That's a shame that there is such comment for this message. You really like flame wars, don't you, Rob?

    Best,
    H

  123. There is nothing wrong with Java by DrXym · · Score: 2, Informative
    Python, Ruby etc are interesting languages but Java is ultra robust, runs on any hardware, has multiple implementations, and so many specifications and libs to support everything from handhelds all the way up to mainframes. And it has a large pool of programmers trained to write Java apps.

    For all the hype of Ruby on Rails, etc., the cold reality is that you would have to be a pretty foolhardy architect to recommend it for anything mission critical. Java might not be sexy but it does exactly what it says on the tin.

    Its great news that its been open source, especially for Linux. But what it means in practice remains to be seen. I expect what it will mean is random bug fix submissions but little else but in practice Java is going to get governed the way it's always been governed. People will branch Java of course but just like Firefox, I doubt it means they can still call it Java.

  124. Postgres???? by ChunderDownunder · · Score: 1

    Get it right, Sun own MySQL.

    Java, Apache, MySQL, Solaris.

  125. Java Sucks by doomicon · · Score: 1

    See opinion, you can argue the merits of this language or that language, but it still comes down to personal preference, opinion, or what your employer requires.

    So to alot of people Java Matters.

    I am one of those people, unfortunately ;-) ./peaCe

    --

    Awesome!
  126. Re:MOD PARENT SIDEWAYS by Anonymous Coward · · Score: 0

    Real programmers fork.

    Java is the new Cobol.

  127. Composition Pattern by ttfkam · · Score: 1
    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  128. MIME type by ttfkam · · Score: 1

    Firefox requires a MIME type, which is not available when loading from the filesystem. Yes, it's lame, but that's the state of things.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:MIME type by Digital_Quartz · · Score: 1

      But, it's strange, because if I drag and drop an SVG file on my machine at work, it works fine. And, as prockcore pointed out, it worked on his machine too.

      Very strange.

  129. Blame the developers, not the platform by Raul+Acevedo · · Score: 1

    I suspect most of the time the problem is the developers themselves. Good developers will write good code in most any decent language; bad developers will write bad code in any language.

    The problem is likely the team (including clueless management) who did the project, they would have likely created a mess in anything else too.

    --
    In a real emergency, we would have all fled in terror, and you would not have been notified.
  130. It is good that you can't write Python so badly by dgym · · Score: 1

    The whole indentation thing is perfectly inline with the goals of Python. Programs are typically read far more than they are written. They are read every time you try to understand them, extend them or debug them.

    One of Pythons goals was to be extremely useful, which means it is desirable to encourage easy-to-read even at the expense of easy-to-write. Programmers have a much easier time reading properly indented code. In Python all code is properly indented, all the time. If the indentation is wrong the code is wrong, so it is still properly indented.

    Now these lofty ideals easily extend into elitism. If you can't write code that is properly indented then you can't write Python and it might be for the best if you don't even try. Some would argue that if you write code that is unclear even at the indentation level then what chance has the logic got, probably best if you don't write code at all. I would say that is going a bit far but then I'm not currently working with anyone who really should be banned from coding.

    Keeping track of indentation isn't too hard so I don't mind. I use vim, and you said you did too. Yes, you can't autoindent, but manual indenting is as easy as hitting "V", selecting the relevant lines, and then hitting "<" or ">".

    That said I do like autoindenting, which is one of the reasons why my language of choice is a lisp dialect. But even so I still keep a keen eye on indenting, the process is just reversed. When editing lisp I make my changes and run autoindent, looking for any movement that I wasn't expecting - which would indicate I had got my parentheses wrong.

    When reading code I still prefer Python because I know I don't have to reindent it first.

    By the way, your example of adding an if statement is a bit bogus. In a C like language you have to go to the start, add the statement, and the brace, go to the end, add the brace, then hit autoindent. There are no more steps in Python, you just start highlighting at the start, move to the end and hit manual indent. It is exactly no harder.

  131. Re:"Not enough hours in the day to learn it all... by ckaminski · · Score: 1

    PHP has already come and gone with a major version incompatible change with the whole globals fiasco. Hindsight 20/20 and all that, it was still a major pain in the ass, having to have two versions of PHP installed to run my apps, simply because a language "allowed" developers to do poor, security-sacrificing things....

    regards.