"What once was old, now is new, it all depends on your point of view..."
This game quote holds more truth than you realize. Yes, as a programmer veteran or old-school gamer, the current series of games or business technology seems like the same old stuff you've been playing with your entire adult life. But, what about those that have just begun their journey? Those people will find the 'old and inferior' to be 'new and improved'.
-Chris
I've heard Templates used in multiple ways, one being parametric polymorphism, such that you have the following:
List productList = new List; Product p = new Product();
productList.add(p);// works p = productList.item(0);// works, notice no cast productList.add(new Object());// compile time failure: add must pass a Product parameter
The other way I've seen it used is to do 'loop-unwinding' where you have a loop that at compile time you know the iteration bounds, and it will remove the loop and duplicate the looped code for each iteration.
In the Java space, 'templates' are not realy the goal, rather 'parametric polymorphism' is because it can lead to faster execution (no casts at runtime, although currently no implementation supports this because it would require bytecode changes, the current generics compiler just hides casts), and also more explicitly define what collection classes are declared to contain.
A lot of people have argued that they have never created a collection object (like ArrayList) that they accidently put the wrong type into it (or maybe they've done it once _ever_.) However, if you are working with a service library that someone else wrote that returns collections of things, you have no way of knowning what the collections of things contain without referring to some documetnation. Parameterized types explicitly declare what the collection contains, so you have a tighter integration with what the code is doing and documentation. (everone here infavor of self-documenting code, raise your hand).
[quote] It's really the same thing with 'JavaBeans', which I remember playing with in '97, the concept was really great but the extra maintenance on BeanInfo classes and such was a complete PITA. [/quote]
If Sun gave you the right tools to manage those PITA BeanInfo classes instead of the by-hand work you most likely had to deal with, you probably would think that the idea behind separating design-time classes from run-time classes was pretty sweet. Same is probably true with EJBs as well (although constructing EARs with the latest J2EE SDK has a nicer interface than manually editing XML files, i must admit, but I digress).
I think some are getting a little too excited over this. Knock MS all you want, but they do have intelligent people who put out good tools with nice features...I mean, the tool alone made VB as popular as it has become, not the VB technology itself. MS took a few pages out of Sun's book on technology, it's only fitting for Sun to take a few pages out of MS's book on tools.
-Chris
It is interesting, the Samarai's name was 'Duo' which is another word for 'double' or 'two' and 'neo' is an anagram for 'one'. Wonder how it all ties together. I never caught the name of the woman.
-Chris
Hi, it should be pretty easy to take your java code and put it on a server and have thin browser clients interact with a server-side session to manipulate the image....you can have a servlet 'displayImage' as the src of an image tag such as that will take the current state of the image and serialize it down as a jpg stream (search for image to JPEG serializers on the web), and you can have a forms-based UI to issue commands to the server to manipulate the image (such as rotate, zoom, etc) and then refresh the page to get the new state of the image from the server using the displayImage servlet. It means a lot of traffic being sent down the pipe (1 image per action) but without being able to install any software on the client that could do stuff locally, you're out of luck. Fortunately, this solution could fit in pdas.
Getting a reference to an iterator from the list does NOT always make a new object, in fact, whenever I make a class that returns iterators, I just ahve the class implement the iterator interface and return itself when clients call iterator(). Saves an object creation (but obviously memory needs to be allocated to keep track of the current iterator!)
-Chris
Hi, I forgot to mention, but when you change the version value from 1.4.0-rc to 1.4.0 you MUST hit enter in the edit field and not just OK or else it won't take the change.
This is a very common problem that people run across using the Web Start. The reason is that if you are using a JVM that is a pre-release or has a '-' in the version name, webstart will assume it's a beta and will attempt to download a 'release' version. Here's what you do to trick it:
Open Webstart
Go to file->properties
Click the Java tab
Change the Version from 1.4.0-rc to 1.4.0
Restart webstart and try to start a new app
Hopefully that should cover it.
I tried jDiskReport, and it was really sweet! -Chris
I'd like to echo that jboss is an opensource implementation, and you are demonstrating your lack of understanding of what open source is when you complain that Sun isn't open-sourcing an API. BTW: The api _is_ already open, you can download reams of information on it. There are more OS projects in the J2EE space than in the.net space, so get over it! Both mono and jboss have a similarity tho: they are both writing their products to a defined specification, its just that in one side, the specification has been crafted by Sun, IBM, oracle, HP, (and another N companies) where the.net stuff is being defined (and changed ALOT if you are one of the poor souls that wrote.net stuff using beta 2 and then tried to run it under RTM) by a single company: microsoft.
Why should I harp on the fact that the APIs changed between beta 2 and rtm? Well, you would THINK that the apis would be stable before they started their beta cycle! but nooooo major aspects of ADO.NET had changes between the b2 and rtm, so get used to that sort of sleight of hand in the future. The mono group must be pulling their hairs out.
-Chris
How about first converting to C first?
15,000 K = 14726.85 C
14726.85C/50 = 294.537C = 530.8066F
So....530F is your typical room temperature?
Does THAT help?
-Chris
How about first converting to C first? 15,000 K = 14726.85 C 14726.85C/50 = 294.537C = 530.8066F So....530F is your typical room temperature? -Chris
"What once was old, now is new, it all depends on your point of view..." This game quote holds more truth than you realize. Yes, as a programmer veteran or old-school gamer, the current series of games or business technology seems like the same old stuff you've been playing with your entire adult life. But, what about those that have just begun their journey? Those people will find the 'old and inferior' to be 'new and improved'. -Chris
I've heard Templates used in multiple ways, one being parametric polymorphism, such that you have the following:
// works // works, notice no cast // compile time failure: add must pass a Product parameter
List productList = new List;
Product p = new Product();
productList.add(p);
p = productList.item(0);
productList.add(new Object());
The other way I've seen it used is to do 'loop-unwinding' where you have a loop that at compile time you know the iteration bounds, and it will remove the loop and duplicate the looped code for each iteration.
In the Java space, 'templates' are not realy the goal, rather 'parametric polymorphism' is because it can lead to faster execution (no casts at runtime, although currently no implementation supports this because it would require bytecode changes, the current generics compiler just hides casts), and also more explicitly define what collection classes are declared to contain.
A lot of people have argued that they have never created a collection object (like ArrayList) that they accidently put the wrong type into it (or maybe they've done it once _ever_.) However, if you are working with a service library that someone else wrote that returns collections of things, you have no way of knowning what the collections of things contain without referring to some documetnation. Parameterized types explicitly declare what the collection contains, so you have a tighter integration with what the code is doing and documentation. (everone here infavor of self-documenting code, raise your hand).
-Chris
[quote]
It's really the same thing with 'JavaBeans', which I remember playing with in '97, the concept was really great but the extra maintenance on BeanInfo classes and such was a complete PITA.
[/quote]
If Sun gave you the right tools to manage those PITA BeanInfo classes instead of the by-hand work you most likely had to deal with, you probably would think that the idea behind separating design-time classes from run-time classes was pretty sweet. Same is probably true with EJBs as well (although constructing EARs with the latest J2EE SDK has a nicer interface than manually editing XML files, i must admit, but I digress).
-Chris
I think some are getting a little too excited over this. Knock MS all you want, but they do have intelligent people who put out good tools with nice features...I mean, the tool alone made VB as popular as it has become, not the VB technology itself. MS took a few pages out of Sun's book on technology, it's only fitting for Sun to take a few pages out of MS's book on tools. -Chris
It is interesting, the Samarai's name was 'Duo' which is another word for 'double' or 'two' and 'neo' is an anagram for 'one'. Wonder how it all ties together. I never caught the name of the woman. -Chris
Hi, it should be pretty easy to take your java code and put it on a server and have thin browser clients interact with a server-side session to manipulate the image....you can have a servlet 'displayImage' as the src of an image tag such as that will take the current state of the image and serialize it down as a jpg stream (search for image to JPEG serializers on the web), and you can have a forms-based UI to issue commands to the server to manipulate the image (such as rotate, zoom, etc) and then refresh the page to get the new state of the image from the server using the displayImage servlet. It means a lot of traffic being sent down the pipe (1 image per action) but without being able to install any software on the client that could do stuff locally, you're out of luck. Fortunately, this solution could fit in pdas.
-Chris
Getting a reference to an iterator from the list does NOT always make a new object, in fact, whenever I make a class that returns iterators, I just ahve the class implement the iterator interface and return itself when clients call iterator(). Saves an object creation (but obviously memory needs to be allocated to keep track of the current iterator!) -Chris
Uh, the following code:
// process next command
DataInputStream din = new DataInputStream(System.in);
while (curLine = DataInputStream.readLine())
{
}
Will read lines of characters from the keyboard. This is difficult?
-Chris
Hi, I forgot to mention, but when you change the version value from 1.4.0-rc to 1.4.0 you MUST hit enter in the edit field and not just OK or else it won't take the change.
-Chris
This is a very common problem that people run across using the Web Start. The reason is that if you are using a JVM that is a pre-release or has a '-' in the version name, webstart will assume it's a beta and will attempt to download a 'release' version. Here's what you do to trick it:
Hopefully that should cover it.
I tried jDiskReport, and it was really sweet!
-Chris
I'd like to echo that jboss is an opensource implementation, and you are demonstrating your lack of understanding of what open source is when you complain that Sun isn't open-sourcing an API. BTW: The api _is_ already open, you can download reams of information on it. There are more OS projects in the J2EE space than in the .net space, so get over it! Both mono and jboss have a similarity tho: they are both writing their products to a defined specification, its just that in one side, the specification has been crafted by Sun, IBM, oracle, HP, (and another N companies) where the .net stuff is being defined (and changed ALOT if you are one of the poor souls that wrote .net stuff using beta 2 and then tried to run it under RTM) by a single company: microsoft.
Why should I harp on the fact that the APIs changed between beta 2 and rtm? Well, you would THINK that the apis would be stable before they started their beta cycle! but nooooo major aspects of ADO.NET had changes between the b2 and rtm, so get used to that sort of sleight of hand in the future. The mono group must be pulling their hairs out.
-Chris