The new EJB model is also strongly influenced by TopLink and JDO - they had representatives on the expert group. The disappointing thing is that the new EJB model is a poor subset of features of Hibernate, JDO and TopLink.
Back to RoR & DB2 - i'm currently working on a multi-terabyte DB2 database application that supports hundreds of large customers running extremely complex queries around the clock. It worked fine in php, there's no reason to believe that it won't work even better in RoR. Saying that this isn't an enterprise app, isn't a substantial app, or doesn't apply to anyone else is highly misleading.
No, it is misleading to generalise. You have something that supports hundreds of users and runs complex queries. Some of us write applications that support tens of thousands of users (with hundreds of concurrent sessions) but with relatively simple queries. With your use the database can pick up the load, and PHP and RoR are entirely suitable. With my use, I am intending to migrate to a clustered system with considerable in-memory cacheing and J2EE is far better.
I would agree that the term 'enterprise' is confusing, but to take one specific case and assume that this indicates that PHP and RoR are general purpose enterprise tools is definitely mistaken. After all, J2EE can work very efficiently over a far wider range of types of enterprise app.
I never really had a problem understanding what OOP was all about. I think too many texts focus on breaking problems down into too many objects/classes instead of teaching people the reasons for using them, mainly code re-use. I find that if you're good at decomposing problems and structuring programs intelligently, then you should be good at the implementation no matter what paradigm is used.
I think there is nothing to compare with the experience of being able to dynamically debug and inspect a running OOP program, particularly a good Smalltalk. The ability to see the impact of code changes immediately and without any edit/compile/run cycle is incredibly powerful (and fun!).
However, I do believe that Ruby is one of those languages that you can learn by just using it from command line. You do not need an IDE or huge framework to do fun stuff. You can at least get a feel for how Ruby does stuff to put you off it or to keep investigating.
There is very strong evidence based on decades of research (such as with Smalltalk in the 70s) that says that the best way to learn and use OOP languages is with a good GUI. There is nothing to match browsing classes and dynamically inspecting objects during the execution of a program.
I am very skeptical whenever I hear 'you don't need a GUI'. This seems to me to be an argument along the lines of 'if we don't implement it, you don't need it'.
It depends:
- I'd bet that 9 out of 10 websphere/weblogic implementations don't use clustering
- many massive databases have relatively modest websites, ie the heavy-lifting is all backend not presentation
- many massive databases have small related "helper" applications that also need presentation layers
- even clustering & caching applications should be able to handle changes to reference data through simple cache-refresh methods
This is irrelevant. Of course the heavy lifting is backend - but that is where websphere/weblogic/j2ee come in - they are systems designed for this kind of heavy lifting. Where such high-performance and cacheing goes on (and this may not be simple), you can't just attempt to connect a PHP or RoR application to the same tables and expect everything to work right.
Fortunately for me, most of my massive databases get php front-ends these days. And hopefully RoR soon.
Then they probably aren't the kind of substantial applications being discussed. Large high-transaction-rate systems tend to use considerable amounts of in-memory storage and avoid falling through to the database where possible, as the database can be the slowest part of the system. The 'let the database store everything' approach of PHP and RoR doesn't scale to the highest levels of performance.
You probably meant enterprise ready as "advanced feature-rich", I meant "useful in business".
Not really - for me, features like support for internationalisation are not just useful, but crucial for any large-scale (enterprise) applications. This is, of course, different from smaller-scale applications, for which RoR may well be suitable.
Massive databases often support multiple presentation layers - ecommerce, internal administration, parter access, internal reporting, etc, etc. Even if you're doing one in Java/websphere there's no reason another couldn't be in RoR.
There is good reason why you may not want it to be. The Java/J2EE/Websphere approach often uses clustering and cacheing to give high performance and scalability. You would not want to let a small RoR application (or any other type of application) loose on such such a system.
Getting the likes of IBM to recognize the usefulness of the Rails framework is a little more than just another DBMS supported: rails used to be bashed, especially by java people, for not being "enterprise ready". They criticised the limitations of the active record ORM (but it's open source, you can either extend it or make your custom sql calls), or the relative immaturity of ruby and libraries.
Now such claims will sound less credible so more dubious people might give it a try.
IBM has been hosting articles about RoR for some time - this is not a major change in attitude - it is indeed simply getting just annother DBMS supported. Rails is bashed for not being enterprise ready for more than just the range of databases supported. This additional support does nothing to change the limitations of the Active Record approach (and the ability to extend the system does not make it enterprise ready).
There are many aspects of Ruby and Rails that remain a significant barrier to much enterprise use - performance, for one thing (Ruby VMs that might address this problem seem stuck in permanent beta), the ability to handle international characters is another.
To assume that these issues are somehow fixed simply because IBM has provided DB2 support is nothing more than wishful thinking.
Environmental activists, at least the most vocal of them, like to tell people that they have to live their lives a certain way - a way that people don't want to live - in order to solve the problem of climate change. The trouble is, that the problem can be solved other ways. Ways that are less disruptive to people's lifestyles (and people know that).
What on Earth has this to do with the data? We are discussing data about global warming, not what do do about it.
Keep in mind here, that all I'm trying to do is explain why some people refuse to believe that global warming exists. All that I'm saying can be summed up easily: People can sense hidden agendas, and they tend not to believe anything you say when they think you've got one.
This is utterly crazy. There is no doubt whatsoever amongst any sane and rational scientists that global warming is actually happening (do you thing the glaciers and arctic ice and thinning by some other, magic process?). The only thing left to debate is how much of it is due to human activity.
To try desperately to deny global warming actually exists because you don't like what some people are saying has to be done about it is not logical or rational.
No, they have not. At least that is not the concensus amongst the world's climatologists.
Yes, actually, it is the consensus that much global warming is causually linked to human activities. As you are unlikely to believe any individual reference, let me quote from the BBC's website (The BBC being one of the most trusted public sources of international information):
"The changes we've seen over recent years and those which are predicted over the next 80 years are thought to be mainly as a result of human behaviour rather than due to natural changes in the atmosphere."
As an astronomy undergrad I don't claim to be an expert by any stretch, but I have read a number of papers from the Astrophysical Journal (and others) on GRBs. My understanding is that they do not beam to any large extent.
GRBs are exceptionally rare and exceptionally powerful. At present, they seem to be a special very large sort of supernova explosion (a hypernova). The gamma rays are sent out in all directions. The reason we detect so many is simply because the observable universe is so huge and a GRB can be detected from a great distance.
The distance is the problem, which requires the beaming. Without beaming, the amount of energy produced by a GRB would be more than allowed by e=mc^2.
It used to be thought that they did not beam, but this would only have been physically possible if they were intra-galactic, limiting their energy.
I find Stephen Baxter's gamma ray burster scenario to be a more plausible solution to the Fermi paradox (assuming it NEEDS solving). He suggests that - well, wrote a book in which - periodically, gigantic local GRBs do a very efficient job of sterilising the galaxy (and, by extension, the rest of the universe) naturally.
This just doesn't work. GRBs seem high-powered because they beam energy in specific directions, and you need to be (relatively) close to suffer from the effects - they certainly don't stretch across a galaxy, even in the direction of maximum intensity. A galaxy-sterilising GRB is totally implausible.
If an extinction type event happens on earth and we're all here, then the human race is gone.
Actually, that is very unlikely. Many species get wiped out because they are specialised. But most survive, even major extinction events. Humans live everywhere, from the hottest deserts to the artic. We are extremely adaptable. It is hard to think of an extinction event that would wipe out the human race entirely; even a few hundred survivors somewhere is enough....
Meanwhile people wo aren't that arrogant and mix OOP and functional programming whenever they feel like it (Symfony, Rails, Django, Zope) are kicking the collective asses of old-school hardcore 100% polymorphic OOP bloat advocates up and down the street (Java).
No, they really aren't. The number of sites implemented using these technologies is a very small fraction of the number implemented with Java. In terms of jobs coding websites, these technologies aren't even 1% of the Java web job market - they aren't even 0.1% - they barely even register.
No matter what the merits of these frameworks (and there are many), to start to claim that they are 'kicking asses' is a sad combination of arrogance and denial of reality. Come back in a few years, and we will see how things turn out, but for the moment, they have a very long way to go.
I was under the impression that birds were thought to have split off earlier than that. The way I'd been taught it, dinosaurs and birds became distinct groups in the Jurassic, and birds survived the extinction due to factors such as warm blooded metabolism and their relatively small size.
It is still very much debated, but my impression is that birds are basically therapod dinosaurs - the bone structures are very close. There is considerable evidence that dinosaurs has warm blood as well.
My interpretation is that dinosaurs split into several groups, and birds were probably one of them.
The cretaceous die off got rid of the dinosaurs in turn, and let mammals take the top spot.
It wasn't quite like that. The die-off simply got rid of most large animals (probably the ones that couldn't burrow or hide in some way to avoid several hours of intense heat after the impact). Some small dinosaurs carried on fine - today we call them birds! Also, for some periods in wasn't mammals that took the top spot - large birds have often been the major predators. Things are far, far more interesting that suggested by this statement.
Re:Sun - Corporate mismanagement at its finest
on
Sun to Cut 5000 Jobs
·
· Score: 2, Insightful
Funding SCO to sue the linux world is undermining it. And that is just one example. I suspect that once everything settles down, we will see more.
That is just rampant FUD. Sun did not fund SCO. They purchased SCO licenses to avoid legal issues. Big deal.
Now, as to your examples, Java for Linux came from the Blackdown group (which sun then took tried to take credit for). Sun has not really done much in way of support of Java off of Solaris and Windows.
Nonsense. Sun provided a lot of help with Java from Blackdown, and they can certainly claim the credit for much of the code. They have contributed substantially to all Java releases since 1.2 on Linux. How exactly is helping with Java on Linux supposed to be anti-Linux?
Likewise, Staroffice started on Linux, sun bought it, and now is using this to try and break MS's monopoly.
And that is supposed to be anti-Linux exactly how?
As to shipping linux, hmmmm. Yeeeaaaahhhhhh. In the same way that MS does apps on Linux. Only when it is a last resort.
Nonsense. They have been shipping Linux and shipping apps for Linux for years.
Re:Sun - Corporate mismanagement at its finest
on
Sun to Cut 5000 Jobs
·
· Score: 1
But Sun has been actively trying to undermine Linux when it should be targeting MS.
Actively undermining Linux? What are you on?
They provide Java for Linux, developer tools for Linux. They produce Star Office (and the open source equivalent Open Office) for Linux. Sun ships Linux.
This is a very strange kind of undermining.... but I guess in some peoples minds the very idea that Linux might not be suitable for everything is 'undermining'.
Ebay runs on Solaris and has just bought new hardware from Sun.
Things are far more complicated that than. EBay also runs primarily on Java - it is one of the most successful and high-performance server-side Java sites in the world.
In other words, almost every aspect of the way EBay works uses the opposite strategy to those suggested by Microsoft.
Funny, I've been wondering that myself for years. Java is slow, clunky, breaks easily is generally an all around piece of shit.
Better tell that to the major institutions and corporations who use Java specifically because of its robustness and performance, like E-Bay or major stock exchanges which can handle hundreds of millions of transactions each day using J2EE.
Who do I believe about Java - them or you? Tricky question....
Azureus is the only java app that I've ever considered 'usable', and even then the memory requirements keep me from using it as my primary BT client.
The new EJB model is also strongly influenced by TopLink and JDO - they had representatives on the expert group. The disappointing thing is that the new EJB model is a poor subset of features of Hibernate, JDO and TopLink.
Back to RoR & DB2 - i'm currently working on a multi-terabyte DB2 database application that supports hundreds of large customers running extremely complex queries around the clock. It worked fine in php, there's no reason to believe that it won't work even better in RoR. Saying that this isn't an enterprise app, isn't a substantial app, or doesn't apply to anyone else is highly misleading.
No, it is misleading to generalise. You have something that supports hundreds of users and runs complex queries. Some of us write applications that support tens of thousands of users (with hundreds of concurrent sessions) but with relatively simple queries. With your use the database can pick up the load, and PHP and RoR are entirely suitable. With my use, I am intending to migrate to a clustered system with considerable in-memory cacheing and J2EE is far better.
I would agree that the term 'enterprise' is confusing, but to take one specific case and assume that this indicates that PHP and RoR are general purpose enterprise tools is definitely mistaken. After all, J2EE can work very efficiently over a far wider range of types of enterprise app.
I never really had a problem understanding what OOP was all about. I think too many texts focus on breaking problems down into too many objects/classes instead of teaching people the reasons for using them, mainly code re-use. I find that if you're good at decomposing problems and structuring programs intelligently, then you should be good at the implementation no matter what paradigm is used.
I think there is nothing to compare with the experience of being able to dynamically debug and inspect a running OOP program, particularly a good Smalltalk. The ability to see the impact of code changes immediately and without any edit/compile/run cycle is incredibly powerful (and fun!).
However, I do believe that Ruby is one of those languages that you can learn by just using it from command line. You do not need an IDE or huge framework to do fun stuff. You can at least get a feel for how Ruby does stuff to put you off it or to keep investigating.
There is very strong evidence based on decades of research (such as with Smalltalk in the 70s) that says that the best way to learn and use OOP languages is with a good GUI. There is nothing to match browsing classes and dynamically inspecting objects during the execution of a program.
I am very skeptical whenever I hear 'you don't need a GUI'. This seems to me to be an argument along the lines of 'if we don't implement it, you don't need it'.
yes, it is!
Wait. I don't develop Ruby. But you're not honestly telling me that it doesn't at least have support for UTF-8, are you?
Yes, I am.
I would have thought that UTF-8, at least, would have been a given for such a project.
Indeed.
Is the support only partial, or is it limited, or... something?
No, it is absent. There is work going on to help fix this.
It depends:
- I'd bet that 9 out of 10 websphere/weblogic implementations don't use clustering
- many massive databases have relatively modest websites, ie the heavy-lifting is all backend not presentation
- many massive databases have small related "helper" applications that also need presentation layers
- even clustering & caching applications should be able to handle changes to reference data through simple cache-refresh methods
This is irrelevant. Of course the heavy lifting is backend - but that is where websphere/weblogic/j2ee come in - they are systems designed for this kind of heavy lifting. Where such high-performance and cacheing goes on (and this may not be simple), you can't just attempt to connect a PHP or RoR application to the same tables and expect everything to work right.
Fortunately for me, most of my massive databases get php front-ends these days. And hopefully RoR soon.
Then they probably aren't the kind of substantial applications being discussed. Large high-transaction-rate systems tend to use considerable amounts of in-memory storage and avoid falling through to the database where possible, as the database can be the slowest part of the system. The 'let the database store everything' approach of PHP and RoR doesn't scale to the highest levels of performance.
You probably meant enterprise ready as "advanced feature-rich", I meant "useful in business".
Not really - for me, features like support for internationalisation are not just useful, but crucial for any large-scale (enterprise) applications. This is, of course, different from smaller-scale applications, for which RoR may well be suitable.
Massive databases often support multiple presentation layers - ecommerce, internal administration, parter access, internal reporting, etc, etc. Even if you're doing one in Java/websphere there's no reason another couldn't be in RoR.
There is good reason why you may not want it to be. The Java/J2EE/Websphere approach often uses clustering and cacheing to give high performance and scalability. You would not want to let a small RoR application (or any other type of application) loose on such such a system.
Getting the likes of IBM to recognize the usefulness of the Rails framework is a little more than just another DBMS supported: rails used to be bashed, especially by java people, for not being "enterprise ready". They criticised the limitations of the active record ORM (but it's open source, you can either extend it or make your custom sql calls), or the relative immaturity of ruby and libraries.
Now such claims will sound less credible so more dubious people might give it a try.
IBM has been hosting articles about RoR for some time - this is not a major change in attitude - it is indeed simply getting just annother DBMS supported. Rails is bashed for not being enterprise ready for more than just the range of databases supported. This additional support does nothing to change the limitations of the Active Record approach (and the ability to extend the system does not make it enterprise ready).
There are many aspects of Ruby and Rails that remain a significant barrier to much enterprise use - performance, for one thing (Ruby VMs that might address this problem seem stuck in permanent beta), the ability to handle international characters is another.
To assume that these issues are somehow fixed simply because IBM has provided DB2 support is nothing more than wishful thinking.
"What on Earth has this to do with the data? We are discussing data about global warming, not what do do about it."
You truly are a complete moron.
Yes, I am. I should have read things in more detail. I apologise.
Environmental activists, at least the most vocal of them, like to tell people that they have to live their lives a certain way - a way that people don't want to live - in order to solve the problem of climate change. The trouble is, that the problem can be solved other ways. Ways that are less disruptive to people's lifestyles (and people know that).
What on Earth has this to do with the data? We are discussing data about global warming, not what do do about it.
Keep in mind here, that all I'm trying to do is explain why some people refuse to believe that global warming exists. All that I'm saying can be summed up easily: People can sense hidden agendas, and they tend not to believe anything you say when they think you've got one.
This is utterly crazy. There is no doubt whatsoever amongst any sane and rational scientists that global warming is actually happening (do you thing the glaciers and arctic ice and thinning by some other, magic process?). The only thing left to debate is how much of it is due to human activity.
To try desperately to deny global warming actually exists because you don't like what some people are saying has to be done about it is not logical or rational.
Yeah, because news outlets are known for their scientific analyses.
Actually, the BBC is know for its accuracy, and has excellent science reporting. It has a world-wide reputation for this.
No, they have not. At least that is not the concensus amongst the world's climatologists.
Yes, actually, it is the consensus that much global warming is causually linked to human activities. As you are unlikely to believe any individual reference, let me quote from the BBC's website (The BBC being one of the most trusted public sources of international information):
http://www.bbc.co.uk/climate/evidence/
"The changes we've seen over recent years and those which are predicted over the next 80 years are thought to be mainly as a result of human behaviour rather than due to natural changes in the atmosphere."
As an astronomy undergrad I don't claim to be an expert by any stretch, but I have read a number of papers from the Astrophysical Journal (and others) on GRBs. My understanding is that they do not beam to any large extent.
GRBs are exceptionally rare and exceptionally powerful. At present, they seem to be a special very large sort of supernova explosion (a hypernova). The gamma rays are sent out in all directions. The reason we detect so many is simply because the observable universe is so huge and a GRB can be detected from a great distance.
The distance is the problem, which requires the beaming. Without beaming, the amount of energy produced by a GRB would be more than allowed by e=mc^2.
It used to be thought that they did not beam, but this would only have been physically possible if they were intra-galactic, limiting their energy.
I find Stephen Baxter's gamma ray burster scenario to be a more plausible solution to the Fermi paradox (assuming it NEEDS solving). He suggests that - well, wrote a book in which - periodically, gigantic local GRBs do a very efficient job of sterilising the galaxy (and, by extension, the rest of the universe) naturally.
This just doesn't work. GRBs seem high-powered because they beam energy in specific directions, and you need to be (relatively) close to suffer from the effects - they certainly don't stretch across a galaxy, even in the direction of maximum intensity. A galaxy-sterilising GRB is totally implausible.
If an extinction type event happens on earth and we're all here, then the human race is gone.
Actually, that is very unlikely. Many species get wiped out because they are specialised. But most survive, even major extinction events. Humans live everywhere, from the hottest deserts to the artic. We are extremely adaptable. It is hard to think of an extinction event that would wipe out the human race entirely; even a few hundred survivors somewhere is enough....
Meanwhile people wo aren't that arrogant and mix OOP and functional programming whenever they feel like it (Symfony, Rails, Django, Zope) are kicking the collective asses of old-school hardcore 100% polymorphic OOP bloat advocates up and down the street (Java).
No, they really aren't. The number of sites implemented using these technologies is a very small fraction of the number implemented with Java. In terms of jobs coding websites, these technologies aren't even 1% of the Java web job market - they aren't even 0.1% - they barely even register.
No matter what the merits of these frameworks (and there are many), to start to claim that they are 'kicking asses' is a sad combination of arrogance and denial of reality. Come back in a few years, and we will see how things turn out, but for the moment, they have a very long way to go.
I was under the impression that birds were thought to have split off earlier than that. The way I'd been taught it, dinosaurs and birds became distinct groups in the Jurassic, and birds survived the extinction due to factors such as warm blooded metabolism and their relatively small size.
It is still very much debated, but my impression is that birds are basically therapod dinosaurs - the bone structures are very close. There is considerable evidence that dinosaurs has warm blood as well.
My interpretation is that dinosaurs split into several groups, and birds were probably one of them.
I believe there is some research into the possibility of artifical replacements for parts of the hippocampus.
The cretaceous die off got rid of the dinosaurs in turn, and let mammals take the top spot.
It wasn't quite like that. The die-off simply got rid of most large animals (probably the ones that couldn't burrow or hide in some way to avoid several hours of intense heat after the impact). Some small dinosaurs carried on fine - today we call them birds! Also, for some periods in wasn't mammals that took the top spot - large birds have often been the major predators. Things are far, far more interesting that suggested by this statement.
Funding SCO to sue the linux world is undermining it. And that is just one example. I suspect that once everything settles down, we will see more.
That is just rampant FUD. Sun did not fund SCO. They purchased SCO licenses to avoid legal issues. Big deal.
Now, as to your examples, Java for Linux came from the Blackdown group (which sun then took tried to take credit for). Sun has not really done much in way of support of Java off of Solaris and Windows.
Nonsense. Sun provided a lot of help with Java from Blackdown, and they can certainly claim the credit for much of the code. They have contributed substantially to all Java releases since 1.2 on Linux. How exactly is helping with Java on Linux supposed to be anti-Linux?
Likewise, Staroffice started on Linux, sun bought it, and now is using this to try and break MS's monopoly.
And that is supposed to be anti-Linux exactly how?
As to shipping linux, hmmmm. Yeeeaaaahhhhhh. In the same way that MS does apps on Linux. Only when it is a last resort.
Nonsense. They have been shipping Linux and shipping apps for Linux for years.
But Sun has been actively trying to undermine Linux when it should be targeting MS.
Actively undermining Linux? What are you on?
They provide Java for Linux, developer tools for Linux. They produce Star Office (and the open source equivalent Open Office) for Linux. Sun ships Linux.
This is a very strange kind of undermining.... but I guess in some peoples minds the very idea that Linux might not be suitable for everything is 'undermining'.
Ebay runs on Solaris and has just bought new hardware from Sun.
Things are far more complicated that than. EBay also runs primarily on Java - it is one of the most successful and high-performance server-side Java sites in the world.
In other words, almost every aspect of the way EBay works uses the opposite strategy to those suggested by Microsoft.
Funny, I've been wondering that myself for years. Java is slow, clunky, breaks easily is generally an all around piece of shit.
s age
Better tell that to the major institutions and corporations who use Java specifically because of its robustness and performance, like E-Bay or major stock exchanges which can handle hundreds of millions of transactions each day using J2EE.
Who do I believe about Java - them or you? Tricky question....
Azureus is the only java app that I've ever considered 'usable', and even then the memory requirements keep me from using it as my primary BT client.
Well set them smaller then. It only requires a single setting for the JVM: http://azureus.aelitis.com/wiki/index.php/MemoryU
If you are having memory issues with an app that can run in only few tens of megabytes of memory, you need to seriously upgrade your PC.