Flash is a language for creating presentations, not applications. You shouldn't have to worry about security if you use it the way it's intended. But I wouldn't ask the folks who are mentally geared to write presentations to create an application. And yes, there are entire embedded user interfaces written in Flash, but IMO that's sort of a travesty.
Java was designed to do just this task. Next to it, AJAX is a kludge that gives us more interactive widgets on web sites simply, and is best for smaller jobs. If you're writing an entire client-side browser-delivered application, Java makes sense. Wedging your entire application into the browser DOM doesn't.
In contrast, Java was not designed to do server-side code, and is making less sense in that application as platforms that offer better time-to-market for server-side development become accepted.
There's a reason he's loath to do this - it will require revenue to be spent on hiring people who know how to pull this off.
Yes, but as you can see from the article, he did this anyway. My remaining question is: is this the first hire? I would expect MySQL to have had people working on a new backend for half a year now.
Great, so the backend would be even further removed from the rest of their database.
Actually, there would be no technical changes, only a licensing change. The MySQL server is already separate from the application and need not be separate from the backend.
Rather than being ingenious, this split between MySQL and its storage engines causes [lots of problems]
I accept that. Someone pointed out that MySQL already has their own transactional backend, NDB, which is used only in cluster mode. I guess it's too specialized to replace InnoDB.
InnoDB is not a stand-alone product, so your analysis would not apply to them, I guess.
That leaves us with Sleepycat. To accept your thesis, I would have to accept that Oracle wants to diversify into cottage-industry embedded databases that represent 1/1000 of the market they are used to. This still seems a bit of a stretch.
Of course I submitted this piece to Slashdot days ago, only to see it rejected. But the editors don't seem to want to look at original work:-) Only when someone else chews over it does it become worthy for Slashdot.
Com'on guys.
This isn't really a beta issue, because the definition file will be constantly updated - as with most anti-virus products. It's always beta. I'd imagine that each definition file gets some testing, but not the same amount as a new software product.
This also brings up some interesting possibilities. Is it possible to craft a virus to deliberately have similar signatures to a commercial product? An anti-virus company that doesn't have quite all commercial applications on hand to test against could be caught by that. Maybe not, but I'm sure someone will try now.
I'm glad I run Linux, and when things like this happen, I wish everyone did.
US handheld phones only get to 600 miliwatts and I doubt British ones get higher. And you would need a higher frequency to cook and egg. The slashdot editor got hoaxed.
We're looking for more authors. All books in the series are placed under the Open Publication License (commercial use permitted, it's a real Open Source license) and made available in source and unencrypted PDF three months after they get to bookstores. Paper copies sell through about as much as other books outside of the series. We get good placement in brick-and-mortar bookstores like Borders and Barnes and Noble. But IMO the biggest benefit to authors is that once sales die down your book won't be locked away while you don't have any rights - a common headache that technical book authors have. Open Source books are living books.
Interested? Write to Mark_Taub at Prenhall.com and say you're interested in being in the Perens series.
Can a hypervisor be differentiating software (software that makes you look better than your competitor) any longer? Methinks the answer is no, because there's a great free one, and Apple folks are smart enough to use Xen rather than invest in a highly-complicated non-differentiator.
Linux already has EFI support. I think it was done for Itanium. I was using BIOS as a generic term. PC-centrists seem to think it refers only to IBM PC BIOS, which I believe is incorrect.
You'd only ask which would run first if you don't know the history of Linux on Macs. Since we already have excellent Linux for PowerPC Macs, the device driver and BIOS issues have already been dealt with. So, it's absolutely trivial to put Linux on an i386-architecture Mac. But nobody seems to be considering Xen. Xen is what's going to be interesting on these platforms. You can run OS 10 and Linux simultaneously, and Windows too on CPUs that include hardware support for emulation.
Regarding the Fortune 0.5M, there are folks using Rails for mission critical applications in much larger enterprises, but not all of them talk about it. There's one publicly known hospital management project, and believe it or not a jail management application. Happy holidays!
And this does not concern anyone, as to the level of maintainability being any less than just about any other home-grown code-reuse methodology/platform ?
I'm not sure if there's a question in there. But perhaps it will be educational to paste in a bit of template code. This is the sort of template code that will be "generated". It's part of the scaffold page that would edit a record. The database table "comment" holds blog postings and comments upon those postings. The generator has queried the database for the table field names, and simply created a text field for each record field, using Rails form field methods. This is no more than a simple list of fields, and would be trivial to edit. This code fragment is then wrapped in a few lines that submit the form. It's easy to see it's not "code generation" in the sense of a compiler.
there's no reason you couldn't have a "Java on Rails", that's almost as good.
Hibernate, Struts, Spring, and so on add facilities to Java that bring it more in the direction of Rails. There's a famous example of a Java programmer who set out to show that he could write concise code in Java on a par with RoR. He attempted to duplicate an existing RoR program. He sent the result to the RoR creator, claiming success. It's three times the size of the equivalent RoR code. So, I'm still waiting to see someone make Java as concise.
It's overstating the case to refer to RoR's scaffolding system as a code generator. They are just templates. They implement a few standard view methods. They read like the view code because they aren't much different from that. Only a few things are parameterized.
You can't compare them to a compiler. They are just a few pages with macros in them. That is a very well understood thing.Bruce
Yes. Either completely override the template for a specific method starting from zero with your own code, or get the code generated for that method and then alter it.
How is this article generating all this Ruby-anti-Ruby nonsense when it's a question of Rail implementation?
Because this is in part an instance of the perennial compiled-vs-interpreted argument.
More importantly, why isn't there a PHPoR?
IMO, because the developers capable of doing something like RoR 1) didn't like the PHP language as much as Ruby and 2) felt they could do better than the existing PHP web environment.
A compiler is in the works. I don't know what checking Matz plans, but it would not impose new type rules upon Ruby. I am only observing that certain forms of type checking are theoretically possible in Ruby by propogating information from a called function to its caller.
Don't take this as an objection to type-checking, I agree that it can be useful.
So, say I do want to add a new method to Enumerable. I add it to one object, and I make use of it in one place. And the system doesn't complain, and I can add that feature gradually to the rest of my program. With tighter checking, I would have to add the new method to all of the other objects that use Enumerable at the same time. In general Ruby facilitates an incremental style of programming. But I used to program C++ incrementally too. So, when I changed the interface of a virtual base class, I defined the method in the base class to print a message and bomb out the program. I bet a lot of other programmers did that too. The incremental paradigm was more important to us than the type-checking. Maybe Ruby just fits us better.
In reality, a new method to Enumerate would probably be defined in terms of the other existing methods and would have a default implementation in the base module.
DBC is useful and would be a good feature to add to Ruby. But even DBC doesn't guarantee that anyone implements a method correctly, only that they return the right type. As I've noted elsewhere, some degree of static checking of Ruby is theoretically possible, and a compiler is in development.
Bruce
In contrast, Java was not designed to do server-side code, and is making less sense in that application as platforms that offer better time-to-market for server-side development become accepted.
Bruce
Yes, but as you can see from the article, he did this anyway. My remaining question is: is this the first hire? I would expect MySQL to have had people working on a new backend for half a year now.
Great, so the backend would be even further removed from the rest of their database.
Actually, there would be no technical changes, only a licensing change. The MySQL server is already separate from the application and need not be separate from the backend.
Rather than being ingenious, this split between MySQL and its storage engines causes [lots of problems]
I accept that. Someone pointed out that MySQL already has their own transactional backend, NDB, which is used only in cluster mode. I guess it's too specialized to replace InnoDB.
Thanks
Bruce
That leaves us with Sleepycat. To accept your thesis, I would have to accept that Oracle wants to diversify into cottage-industry embedded databases that represent 1/1000 of the market they are used to. This still seems a bit of a stretch.
Thanks
Bruce
Of course I submitted this piece to Slashdot days ago, only to see it rejected. But the editors don't seem to want to look at original work :-) Only when someone else chews over it does it become worthy for Slashdot.
Com'on guys.
This also brings up some interesting possibilities. Is it possible to craft a virus to deliberately have similar signatures to a commercial product? An anti-virus company that doesn't have quite all commercial applications on hand to test against could be caught by that. Maybe not, but I'm sure someone will try now.
I'm glad I run Linux, and when things like this happen, I wish everyone did.
Bruce
US handheld phones only get to 600 miliwatts and I doubt British ones get higher. And you would need a higher frequency to cook and egg. The slashdot editor got hoaxed.
Interested? Write to Mark_Taub at Prenhall.com and say you're interested in being in the Perens series.
Bruce
Thanks
Bruce
Bruce
Bruce
Bruce
MMX used to cost extra too.
Sorry, I was using BIOS as a generic term. Linux supports EFI, we had to do it for Itanium.
Bruce
This is not an issue on CPUs that include hardware support for virtual system partitions. Intel has said it will include this support in future CPUs.
Bruce
Bruce
Oh, the same reason that we had to fight to remove the Morse Code test requirement for Amateur Radio licensing. People tend to stick to the old ways of doing things.
Regarding the Fortune 0.5M, there are folks using Rails for mission critical applications in much larger enterprises, but not all of them talk about it. There's one publicly known hospital management project, and believe it or not a jail management application. Happy holidays!
Thanks
Bruce
I'm not sure if there's a question in there. But perhaps it will be educational to paste in a bit of template code. This is the sort of template code that will be "generated". It's part of the scaffold page that would edit a record. The database table "comment" holds blog postings and comments upon those postings. The generator has queried the database for the table field names, and simply created a text field for each record field, using Rails form field methods. This is no more than a simple list of fields, and would be trivial to edit. This code fragment is then wrapped in a few lines that submit the form. It's easy to see it's not "code generation" in the sense of a compiler.
<%= error_messages_for 'comment' %>
<!--[form:comment]-->
<p><label for="comment_title">Title</label><br/>
<%= text_field 'comment', 'title' %></p>
<p><label for="comment_state">State</label><br/>
</p>
<p><label for="comment_indentation">Indentation</label><br/
<%= text_field 'comment', 'indentation' %></p>
<p><label for="comment_interesting">Interesting</label><br/
<%= text_field 'comment', 'interesting' %></p>
<p><label for="comment_informative">Informative</label><br/
<%= text_field 'comment', 'informative' %></p>
<p><label for="comment_comportment">Comportment</label><br/
<%= text_field 'comment', 'comportment' %></p>
<p><label for="comment_agreement">Agreement</label><br/><%= text_field 'comment', 'agreement' %></p>
<p><label for="comment_modified_on">Modified on</label><br/>
</p>
<p><label for="comment_publish_after">Publish after</label><br/>
</p>
<p><label for="comment_created_on">Created on</label><br/>
</p>
<p><label for="comment_lock_version">Lock version</label><br/>
<%= text_field 'comment', 'lock_version' %></p>
<p><label for="comment_preface">Preface</label><br/>
<%= text_area 'comment', 'preface' %></p>
<p><label for="comment_body">Body</label><br/>
<%= text_area 'comment', 'body' %></p>
<!--[eoform:comment]-->
That is, if anyone but David is working on XFree86. And yes, David did put his foot in it in a real big way.
Indeed, there may be enough of them that 99% do not hack at all.
Bruce
Hibernate, Struts, Spring, and so on add facilities to Java that bring it more in the direction of Rails. There's a famous example of a Java programmer who set out to show that he could write concise code in Java on a par with RoR. He attempted to duplicate an existing RoR program. He sent the result to the RoR creator, claiming success. It's three times the size of the equivalent RoR code. So, I'm still waiting to see someone make Java as concise.
Bruce
You can't compare them to a compiler. They are just a few pages with macros in them. That is a very well understood thing.Bruce
Yes. Either completely override the template for a specific method starting from zero with your own code, or get the code generated for that method and then alter it.
How is this article generating all this Ruby-anti-Ruby nonsense when it's a question of Rail implementation?
Because this is in part an instance of the perennial compiled-vs-interpreted argument.
More importantly, why isn't there a PHPoR?
IMO, because the developers capable of doing something like RoR 1) didn't like the PHP language as much as Ruby and 2) felt they could do better than the existing PHP web environment.
Thanks
Bruce
Don't take this as an objection to type-checking, I agree that it can be useful.
So, say I do want to add a new method to Enumerable. I add it to one object, and I make use of it in one place. And the system doesn't complain, and I can add that feature gradually to the rest of my program. With tighter checking, I would have to add the new method to all of the other objects that use Enumerable at the same time. In general Ruby facilitates an incremental style of programming. But I used to program C++ incrementally too. So, when I changed the interface of a virtual base class, I defined the method in the base class to print a message and bomb out the program. I bet a lot of other programmers did that too. The incremental paradigm was more important to us than the type-checking. Maybe Ruby just fits us better.
In reality, a new method to Enumerate would probably be defined in terms of the other existing methods and would have a default implementation in the base module.
Bruce
Bruce