Slashdot Mirror


James Gosling on Java

prostoalex writes "It's been ten years since the official introduction of Java - a programming language combined with virtual machine and a class library. ZDNet published an interview with James Gosling, the creator of Java, who talks about the project's past, present and future."

19 of 356 comments (clear)

  1. Want to talk to The Man? by Saeed+al-Sahaf · · Score: 5, Informative

    If anyone is interested in conversing with James Gosling one-on-one, he (amazingly) hangs out at DevShed.com in the forums, likes to aswer questions, and my guess is he knows what he's talking about when it comes to Java. Even more amazing is that as smart a guy as he is, his social skills leave a lot to be desired (read some of his posts in the Lounge).

    --
    "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    1. Re:Want to talk to The Man? by Saeed+al-Sahaf · · Score: 2, Informative

      Thank you. Your comments are appriciated, and will be evaluated by our team. Please do not respond, we will contact you if we need more information.

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    2. Re:Want to talk to The Man? by Anonymous Coward · · Score: 1, Informative

      He's an influential guy, and definitely knows what he's talking about. But once I did see him pick his nose in public and eat the booger. Still though, a good guy!

  2. Re:Ruby on Rails driving change? by pdbaby · · Score: 2, Informative

    As far as I'm concerned, everybody (that I know in the java world) is (and has used for some time) Borland's JBuilder. It's an amazingly nice IDE that's of far higher quality IMO than Eclipse (although the swing interface does drive me a little mad)

    --
    Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
  3. Re:My favorite quote by Anonymous Coward · · Score: 2, Informative

    FYi, parent is trolling. There's no such quote in the article.

  4. Re:Not a bad interview by Decaff · · Score: 4, Informative

    Why the hell did the interviewer decide to turn it into a "how did/does/will Java work with MS technologies" diatribe?

    I mean, theyre so disparate in ideaology, while I can understand some of the relationships, why on earth bring them up with the creator of a language that MS has deliberately shunned when they couldnt get it to work "their way"?


    Because neither Microsoft .NET (their "Java") or Java are going to go away. Both will be around for a long time, and both are going to have to integrate.

    Java is evolving to work better with MS technologies in three ways: First, the Desktop Integration APIs, which allow the portable use of Browsers and features like the systray within Java applications, Secondly, by developing Java GUIs to make them indistinguishable from other Windows applications on Longhorn without losing portability, and Thirdly, with the use of Web Services to allow .NET programs to call Java, and vice versa.

  5. Page 2 and scripting languages by MarkEst1973 · · Score: 5, Informative
    The entire second page of the article talks about scripting languages, specifically Javascript (in browsers) and Groovy.

    1. Kudos to the Groovy authors. They've even garnered James Gosling's attention. If you write Java code and consider yourself even a little bit of a forward thinker, look up Groovy. It's a very important JSR (JSR-241 specifically).

    2. He talks about Javascript solely from the point of view of the browser. Yes, I agree that Javascript is predominently implemented in a browser, but it's reach can be felt everywhere. Javascript == ActionScript (Flash scripting language). Javascript == CFScript (ColdFusion scripting language). Javascript object notation == Python object notation.

    But what about Javascript and Rhino's inclusion in Java 6? I've been using Rhino as a server side language for a while now because Struts is way too verbose for my taste. I just want a thin glue layer between the web interface and my java components. I'm sick and tired of endless xml configuration (that means you, too, EJB!). A Rhino script on the server (with embedded Request, Response, Application, and Session objects) is the perfect glue that does not need xml configuration. (See also Groovy's Groovlets for a thin glue layer).

    3. Javascript has been called Lisp in C's clothing. Javascript (via Rhino) will be included in Java 6. I also read that Java 6 will allow access to the parse trees created by the javac compiler (same link as Java 6 above).

    Java is now Lisp? Paul Graham writes about 9 features that made Lisp unique when it debuted in the 50s. Access to the parse trees is one of the most advanced features of Lisp. He argues that when a language has all 9 features (and Java today is at about #5), you've not created a new language but a dialect of Lisp.

    I am a Very Big Fan of dynamic languages that can flex like a pretzel to fit my problem domain. Is Java evolving to be that pretzel?

  6. Re:My favorite quote by suitepotato · · Score: 2, Informative

    FYI, grandparent should have been modded informative and parent modded funny.

    --
    If my grammar and spelling are off, I am [distracted/tired/careless] (take your pick)
  7. Re:Article Summary: by Decaff · · Score: 4, Informative

    Unfortuately things can happen like a GC cycle at a bad time that can cause annoying slowdowns at the worst moment.

    As Java is now used in real-time control applications, that is certainly avoidable.

    bloated: the java class libraries are huge and so deploying a java environment (and you can't assume a decent java system will already be installed by default) is a huge undertaking

    Not really. Java can be installed as a single rpm or tgz. Its over 10 mb, but given the size of a CD-ROM, or broadband download speeds, that is hardly a 'huge undertaking'.

    and who would seriously wan't to release thier software as java bytecode when jad is arround?

    There are plenty of bytecode obfuscators around.

  8. Re:My favorite quote by MillionthMonkey · · Score: 4, Informative

    C++ was 14 around 1997 and was widely used and known for its high performance.

    That's not how I remember it. I remember in 1996-1997 people were scoffing at C++ because it was "slower than C".

  9. Re:Article Summary: by dnoyeb · · Score: 2, Informative

    slow: slow to start definately, slow in actual code speed no. Unfortuately things can happen like a GC cycle at a bad time that can cause annoying slowdowns at the worst moment

    Sure its slow to start because ther is a 2nd process. But Java 1.5 addresses this to some degree. As for inconvient GC cycles, that is the programmers fault. You have to do your own GC when you think you have time. The JVM will only GC when its full...

    bloated: the java class libraries are huge and so deploying a java environment (and you can't assume a decent java system will already be installed by default) is a huge undertaking
    False.

    NOT FREE: well there are free jvms but there is still catching up to do and as they get better they will undoubtablly suffer the same issue as wine, most stuff will work but there will be slight differences that fuck over some apps.
    You mean like Microsoft tried?

    the fact that languages like java allow poor coders to produce code that kind of works rather than total failures probablly doesn't help the languages reputation either.
    Troll.

  10. Re:If only by Decaff · · Score: 2, Informative

    Unfortunately, it's like trying to run C++ programs through an interpreter on a machine at 3/4 of the power of the one you're using instead of actually compiling and tweaking it for maximum speed and efficiency.

    If you ran some actual benchmarks (with modern Java) you will find you are mistaken. Modern Java VMs include an optimiser that tweaks the machine code for speed and efficiency just as you describe. Last year, a set of benchmarks for numerical computation showed Java within 4-5% of optimised C code.

    I use Java apps at work and they are often slow and ponderous compared to similar apps written the normal way in C++

    The reason for this is usually that some organisations are very slow at upgrading their Java. Java 1.5 was released last year and is generally acknowledged to be fast, both in terms of general performance and GUI speed. Many companies are still using Java 1.3, which is very old.

  11. Re:If only by $RANDOMLUSER · · Score: 3, Informative
    I didn't say it was the Holy Grail, I said I think it's got C++ beat all to hell in terms of programmer productivity. If I had to write a high user count shrink-wrap kind of program, I'd have to write it in C++, but in the one-off, less than 200 user, written by the (most/least)? qualified programmer available, frequent mod/respec world most of us live in, I'll take Java over C++ any day of the week. That way, I'll get fewer 2:00 A.M. phone calls.

    The "barfing runtime exceptions" was exactly my point. It's not only a red flag for badly written code, it's a built-in QC test. I'm TIRED of reading other people's code and having to go back to them and say "O.K., this (really arcane thing that you never will understand) might/probably will happen, and so therefore I can't put you code into production". All them "barfed runtime exceptions" make my argument for me. I can simply fiat "no unhandled exceptions" and leave it at that.

    --
    No folly is more costly than the folly of intolerant idealism. - Winston Churchill
  12. Re:Ruby on Rails driving change? by AndrewR81 · · Score: 2, Informative
    As fitting as "Eclipse" is, they were actually targeting Microsoft. From Eclipse: Behind the Name:

    Back in 2003, when Sun Microsystems Inc. was considering whether it might join the then soon-to-be-independent Eclipse Foundation, one of the key concerns, aside from technical issues, was the name Eclipse.

    Sun said it would not join an organization named Eclipse, and the foundation agreed to change the name. The Santa Clara, Calif., company didn't want to join an organization whose name was perceived as encouraging the demise of Sun, company executives said at the time.

    It turned out Sun wasn't the target of the Eclipse moniker, though. In his keynote at the EclipseCon 2005 conference in March, Lee Nackman, chief technology officer and vice president of Design, Construction, and Test Tools at IBM's Rational Software division, said Microsoft Corp. was actually the company IBM wanted to "eclipse" and was the true object of IBM's attention.

    "Our target was Microsoft," Nackman said. "Microsoft was clearly the market leader and was on a path to become the dominant tools platform. It was clear there'd be competition for developers... So around 1998 we felt, key to the competition around application servers and middleware, we needed to bring developers to Java-based middleware ... IBM's middleware business depended on bringing developers to our Java-based middleware."

    [snip]

    "But the name seems so perfect a knock against Sun. How could it not be? Well, according to a source, some of the early Eclipse originators had a retreat where one of the themes was the universe and many code names emerged involving celestial themes. Eclipse stuck. And while Sun was not necessarily the primary target, "these were really smart people, and I don't think the visualization and competitive implication was lost," a source said."

  13. Re:If only by manboy9 · · Score: 1, Informative

    I disagree. You can't just write an inefficient program and hope that advances in hardware make up for it.

    I think Java's biggest problem is the lack of a good garbage collector. I saw a program where the programmers had put a tiny memory display in the bottom left corner of the screen. At first it was OK, hovering around 100 megs, but as we kept using it, the memory usage would increase as needed, but it would never free it after it was done with it. Within 10 minutes, the thing had occupied all 512 megabytes of that computer's RAM and nearly crashed the system.

    There is also a non-Java alternative to this program which has less features, and a CLI instead of a fancy GUI, but at least it doesn't need two Gigs of RAM to run. Personally, I prefer the non-Java one.

  14. Re:Job Descriptions by Committee by Quattro+Vezina · · Score: 2, Informative

    It's funny you should mention that...

    One former professor of mine uses the phrase "10 years of Java experience" as an indicator of when to throw out a resume. He does some consulting work, and companies tend to ask him to go over the resumes of their applicants and junk those that he feels are unqualified. First, those who don't have CS or SE degrees get thrown out. Second, he throws out anything with obvious lies such as "10 years of Java experience".

    When you posted that, I immediately thought of that story, because it really shows how some people can be utter dumbasses.

    --
    I support the Center for Consumer Freedom
  15. Re:Ruby on Rails driving change? by njcoder · · Score: 3, Informative
    1. Better out of the Box support for web applications. The web tools are more mature and capable than what Eclipse is working on. You don't have to pay for things like a JSP editor or bother to download it.

    2. Out of the box EJB support that is good.

    3. Out of the box webservices support.

    4. A much better, more mature GUI Editor that's going to get even better in 4.2. (Not sure if VE is in eclipse 3.1)

    5. Cool auto comment tool

    6. Bundled Tomcat and Full J2EE compliant app server.

    7. This guy's blog to read :)

    8. This one is subjective but to me... i don't find the interface as cluttered or ugly as Eclipse. Obviously other's disagree. Also even the the windows are not native, the layout is much closer to what native dialogs look like on windows. With Eclipse, the dialog boxes just seem weird. Error messages look and feel like they don't belong, etc.

  16. Re:Java Script (two words) by bl7385 · · Score: 2, Informative

    An updated Eclipse plug-in and a new Idea plug-in for Groovy were just released. They aren't perfect yet, but there is progress.

  17. Re:What is with java people and groovy? by Skjellifetti · · Score: 2, Informative

    We considered Jython and Groovy when we were adding scripting to an app, since they were the only two scripting languages that came with licenses that were found to be acceptable by our legal department.

    Why choose at all? Why not use the Bean Scripting Framework (originally from IBM's Alpha Works, IIRC) and let the customer choose whichever language they prefer? BSF lets you embed any scripting language that has a conforming wrapper. BSF wrappers are available for Groovy, Jython, BeanShell, Rhino, JRuby, Tcl, NetRexx, XSLT, and perl among others (although it's been my experience that some of these aren't all there yet).