Interview With the Father of Java 107
Eh-Wire writes "The Globe & Mail interviews James Gosling after a keynote talk to Sun developers in his home town of Calgary. His thoughts and comments regarding the 'dead end' oil industry, disconnected Telco strategist, and unleashing 'creative weirdoes' makes for an interesting read." From the article: "Java is evolving. It's sort of embedded in the social experiment that is the Internet. There's been tremendous adoption of Java for building large-scale enterprise apps. It's worked tremendously well there. There's been all kinds of growth lately in cellphones and more and more embedded systems. It's all about making the environment around us more intelligent."
No wonder the Internet is slower... (Score:2, Funny)
I was wondering why everything online has been slower lately.
...Or not. (Score:4, Insightful)
Re:Balony (Score:2)
Java used to have(1.4 did, and I think the first of 1.5 did too) a license that did not permit distribution of changes made to the sources, and what was worse REQUIRED that you distributed all 50+MB of the jre with your application, insted of just bundling the things you actuelly needed.
That made it really bad to do desktop java applications because even a small application would come with a 50MB jre.
Re:Balony (Score:2)
Re:Balony (Score:2)
Re:Balony (Score:2)
But if it is only 16MB to install, who cares how big it is afterwards? 50MB is insignificant in terms of disk space these days.
sig should read.... (Score:1)
Personally, my money is on the unary group being the larger of the 11 / 10 / 2 groups.
Off-topic as can be, happy April 1...
Java? I thought it was PHP! (Score:2, Funny)
I know that's near Springfield, (Score:1)
Re:I know that's near Springfield, (Score:1)
Sorry, it is Texas.
Re:My eyes!! (Score:1, Offtopic)
Re:My eyes!! (Score:2)
And what's this about ponys?
Re:My eyes!! (Score:2)
Re:My eyes!! (Score:1, Insightful)
Re:My eyes!! (Score:1)
Re:My eyes!! (Score:1)
Re:My eyes!! (Score:1, Insightful)
Re:My eyes!! (Score:1)
Seriously though, whats with the pink???
"The goggles! Zey do nussing!"
As an Australian... (Score:2)
More pink than you'd see in a Hustler pictorial of Barbra Cartland (and that's a lot of pink). And Babs nude would probably be prettier to look at...yes, it is that bad...
Hehehhehe... (Score:2)
Re:My eyes!! (Score:2)
Re:My eyes!! (Score:1)
Re:My eyes!! (Score:2, Offtopic)
Re:My eyes!! (Score:1)
So? Get PrefBar extension! (Score:2)
Re:My eyes!! (Score:2, Offtopic)
Re:My eyes!! (Score:2)
Re:My eyes!! (Score:1)
Can I have this as a default? Pleeeaaaasse!?1?!!?
Re:My eyes!! (Score:1)
you probably can if you use the slashdot-fools.css stylesheet. I imagine they will keep it online. Or you might want to just download it and save it.
Re:My eyes!! (Score:1)
Re:My eyes!! (Score:1)
I cheated on my girl friend (she was offline so I talked to another chick on Messenger), I'm sure she hacked Slashdot!!!
ENOUGH ! You shouldn't touch my Slashdot! i'm gonna break up.
April fools on GMT time? (Score:1)
Why not? (Score:2)
Re:OMG!! Ponies! (Score:2)
Shameful exploitation of VIPs at Sun (Score:5, Insightful)
The talk was almost the exact same rambling "Java is everywhere..." speech that he's been giving for years now. The highlight was when his Mac completely locked up during the presentation and he had to do a cold restart! He claimed it's never happend before in 5 years of Mac use...
Anyway, my point is that Sun has a long history of exploiting some of their top talent by forcing them to travel around the world giving these lightweight marketing talks at corporate events. I remember in the late 90's it was the same thing with Bill Joy. They had him doing so many talks in different cities every day that the actual meeting was in a room at the airport! He was literally on the ground for less than 2 hours, then off to the next stop.
They fly these guys around on these whirlwind trips to try to draw people to marketing events they would otherwise not bother with. It's seems like such a waste of talent/time. Maybe Sun would be better off letting Gosling and his ilk work on interesting projects that might actually provide Sun with new revenue sources, or at least give them something new and interesting to talk about when they do have to give speeches.
Even at JavaOne, Gosling's role in Java has been reduced to little more than the "funny looking guy that throws out the T-shirts". It's sad really, I never thought I'd feel sorry for James Gosling, but on Tuesday I did.
Re:Shameful exploitation of VIPs at Sun (Score:2)
Re:Java's so 90's! (Score:1)
I haven't had that problem. Yes, my XML docs can get pretty huge as a project progresses, but still it is small compared to the amount of Java code. In any case, XML configuration is useful enough (e.g. when used in Spring), it makes it especially easy to make custom builds for different customers. Convention over configuration is not always useful.
Re:Java's so 90's! (Score:2)
The problem isn't the amount of XML out there. The problem is that there's more than just XML (e.g. property files), and that every Java framework comes with its own XML schema.
Re:Java's so 90's! (Score:3, Insightful)
Re:Java's so 90's! (Score:2)
And when you find yourself having to debug XML because your application doesn't work. I am unconvinced about having wiring in XML instead of code.
Re:Java Q: (Score:1)
Re:Java Q: (Score:2)
I think this load time leads to the "Java is slow" perception some people have. Thoughts?
On my 2GHz portable just about any GUI app takes several seconds to load, Java or not.
Re:Not compatible with itself (Score:1)
You are just just FUD-ing around, right? There is a -target option to javac for a good reason. You use the -target option to ensure that your compiled code will run successfully on a certain VM level (and *all* later versions).
It is really a shame if someone is building (God forbid .. distributing) Java applications without taking advantage of this fantastic feature.
Re:Not compatible with itself (Score:2)
It is really a shame if someone is building (God forbid
Fixed that for you.
Re:Not compatible with itself (Score:1)
The people who come up with the Computer Science AP exam should therefore have their tongues cut out and stapled to their foreheads before being fired.
Re:Not compatible with itself (Score:2)
Yes, I've encountered that (Score:2)
I have encountered that situation -- built something under 1.4 on Windows, unable to run it on 1.5 on Linux, and various permutations. I find the easiest thing is to distribute sources and have people build the darned thing with whatever Java they have on their system.
what I don't get is (Score:1, Interesting)
Doubly astonishing so since SUN was co-developing OpenStep in team with NeXT, so they should have known how to design a proper API and what language features are needed for this. Now the Java API i
Re:what I don't get is (Score:1, Insightful)
Re:what I don't get is (Score:1)
That just doesn't look well designed for me
sqar
Re:what I don't get is (Score:1)
Re:what I don't get is (Score:1)
Embedded and Java shouldn't be seen together! (Score:4, Informative)
As an unfortunate software developer on one of Sun's high profile embedded Java projects, OCAP, it irks me to see Java and Embedded listed in the same sentence. I could rant for days on the shortcomings of Java and it's unsuitability for an embedded environment but to name some of my biggest peeves...
1. Any language without unsigned primitive types doesn't belong in embedded land. Embedded systems frequently use unsigned data types. Making me cast up to a bigger primitive size and doing all kinds of bit manipulation gyrations to make unsigned byte data come out right is just wrong.
2. Most embedded implementations don't have room for a JIT compiler. So you end up interpreting everything or precompiling on the way down to the embedded device. Most embedded devices these days still have pretty lame CPUs in them so everything Java is extra extra slow even relative to a desktop counterpart. Especially if you're doing an app with any kind of graphics. As for pre-compiling...this simply isn't an option in some deployments...say OCAP for instance!
3. Many embedded environments use multithreading to process various IO tasks etc. Having what amounts to a critical section for your only means of synchronization (and yea Java 5 tries to solve this but most embedded devices are still back on 1.x implementations of Java) leads to one heck of a deadlock nightmare if you aren't very careful with your design. I need not cite the performance hit here either if you're lazy with your syncs. I also need not mention that the thread scheduling is left unspecified so your app may run OK on one JVM but when you port ot another there's no telling...
4. Java requires a lot of memory if you really want to do something useful. Especially anything graphics related. Most embedded devices don't abound with a ton of memory. As such you end up garbage collecting more and running into problems. Garbage collection can be a costly operation per #2 above. And finding a memory leak in a Java program ain't no picnic either. Especially on an embedded device where you may or matynot be able to get tools in there to see what's going on.
Yeah you can circumvent some issues if you're smart about your design and don't do stupid things but so far most embedded Java developers I've met are imports from desktop/server land and don't think about this stuff so you can imagine the mess you end up with.
Just my two cents...
Unsigned types (Score:2, Informative)
Re:Embedded and Java shouldn't be seen together! (Score:1)
I know that J2ME could have been designed better (mainly due to the fact that it's a committee), but it's not so bad that you can work around the
Java bloat (Score:1, Informative)
Now I know I am going to get mod down, tossed to the wolves, raked over the coals with an inbox full of your nuts -- but here goes because after spending 4 years in Java I now have an opinion.
Java is bloatware and sells hardware. It is great on a desktop as an applet or even as a program running locally where you have 2GB or ram and dual procs to itself. But it has no freaking business on a server. In fact, those writing server apps in Java are plain utterly stupid.
Lets do the math... I have 600 users
Um, what? (Score:5, Informative)
I think you probably don't understand how Java server stuff works. Your reference to Apache being part of a Java server deployment shows that. It used to be, back in the old days a few years ago, that people often installed Tomcat and Apache together using a connector. I don't know anyone who still does this. Tomcat 5 servers static content about as fast as Apache.
As for threading: If you're writing a web application, you don't need to write any threads. You need to give a little bit of thought to threads, because your Servlets are objects and they can be used by multiple threads at the same time. Handling this is quite trivial: you just don't touch any instance variables from methods in your servlet. If you don't want to try to figure out threading, that's all you need to know. Tomcat will do all the rest.
Again, I have no clue where you got that 256mb per user, but I'll clarify a few points. In a typical Java Servlet application, which would use Tomcat (or similar) to serve an application where users log in, do stuff, and data are stored in a DB, this is how resource use will work:
I really don't think you understand how these things work, and if you have real-world experience with Java webapps, then the ones you are thinking of were written by clowns.
-----------Contact management, calendar management, sales automation [contempo.biz]
Re:Um, what? (Score:1)
Re:Java bloat (Score:1)
Thats my new signature.
Re:Java bloat (Score:2)
Re:Java bloat (Score:1)
With Tomcat, if I have to restart, it doesn't kick all the users off. Their sessions are serialized to disk and they can continue where they left off once the app starts again.
But it wasn't april fools yet... (Score:1)
Java has some uses, some really good uses, but I stopped waiting for it to change the world years ago, Sun should pour the money it uses on pretending Java is going to change everything into development instead, then maybe some day we can actually use Java to make a decent graphical application, render
Gosling said Java is evolving (Score:2, Funny)
photo opp (Score:2)
yes, the guy in the yellow shirt is the java guy.
http://static.flickr.com/19/121342959_449ed7dea0_
it seems that java _can_ defend itself
Gosling could join the 21st Century (Score:1)
Yes, bloat.
If I never see another BuffereredDataStreamBufferReaderWriterBufferStrea m Reader (or whatever that was), it'll be too soon. Bleh. Java is soooo last-century.
Don't start with me about Microsoft-only with C#. There's Mono, you know, so why not broaden that Linu-centric viewpoint you have,
Re:Java is great for enterprise apps (Score:2)
Re:why is java soo dead ? (Score:2, Insightful)
Re:why is java soo dead ? (Score:1, Redundant)
why aren't any of the cool and useful websites being created with java on the back-end ?
Honestly, I believe the problem here is more with Java developers than Java itself. Java developers are constantly trying to overwrite their code (as in writing more than necessary, not saving over an existing file:). Instead of using the KISS mentality, everything has to have an XML configuration file and object factory. Java devs are typically very black and white, code to the r
Re:why is java soo dead ? (Score:1)
JSF with AJAX. He's saying the desktop will be just the evolution of a terminal, aka a WebBrowser. Of course we all know that's marketing...
In the end, I think Java is evolving in non-traditional web apps (aka RoR apps) and into mobile, P2P, multimedia, etc... That's looking at it compared to C/C++.
On the enterprise level, it in a way has become the new COBOL since it's so embedded in a lot of back end apps, it will take good justification and some time to por
Re:why is java soo dead ? (Score:2)