This is a nice out of the way place now to put supporting information so it doesn't clutter up the baby's room. Snooky is growing fast and we're going to need more space before long.
So, sorry to put this in such an out of place place, but one of the Raging Bull Treeforters reposted an RB post I made a month after the SiteFlash patent was granted in November, 2004. In fact, the post is right before Christmas 2004.
http://ragingbull.quote.com/mboard/boards.cgi?board=VCSY&read=214598
| Msg. 142039 of 214604 Jump to msg. # |
In the spirit of the season I thought I might exhange gifts so the readers can see who has the biggest heart (I know I do) So I'm laying this little bit of punditry here at the foot of the tree and let's just call it "from the guys at the treefort to all of you who wants to know" SiteFlash technology By: cougar24 on December 23, 2004 at 5:29:41 PM There hasn't been much discussion regarding the SiteFlash patent. Does anyone know of a competing technology/company we can research this against? Is this a technology that is in demand? Is there a market for licensing this type of technology to larger companies? I know absolutely nothing about this. Any input is appreciated. SiteFlash Part 1 By: Portuno_Diamo on December 23, 2004 at 10:29:05 PM This message was edited by Moderator at 2004-12-23 22:29:5 Beginning with the patent: United States Patent 6,826,744 McAuley November 30, 2004 Please reference: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=/netahtml/srchnum.htm&r=1&f=G&l=50&s1=6,826,744.WKU.&OS=PN/6,826,744&RS=PN/6,826,744 Said patent is a: System and method for generating web sites in an arbitrary object framework This is the SiteFlash concept: build any sort of applications and deploy them as websites that fit tailored information for any user in any form or function. Notice I said "build applications" the way you build websites. It's very important to read BACKGROUND OF THE INVENTION to appreciate the problems faced by programmers of all types using traditional programming languages to build, deploy and maintain complex distributed applications. The more you understand this background and the plights facing software application development managers facing an expanded stream of data and diversity into the 21st century. It begins: A system and method for generating computer applications in an arbitrary object framework. A way of building useful software without having to worry about where it will be used or how it will need interact with other applications. In other words, this invention provides for a technological means to build software programs that perform useful functions and they all reside in a structure that doesn't care how you perform functions or present your information. The framework makes the mechanics invisible and you use the applications in the way you see fit. The method separates content, form, and function of the computer application so that each may be accessed or modified separately. Notice the language here. It's very important to understanding why this patent is so important. Background: Several years ago the hot idea in web-design and a major shift inefficiencies was the segmentation of website content and form (format) into databases that could be managed discretely and applied globally. This is what Content Management and Format Management and Publishing Management software is about; making sure you can put out consistent information content to your userbase (all the people in your computer networked community) and making sure you can format that information anywhere you use it. In other words; It will do no good to spell out a BART Schedule if you have the numbers jumbled together on somebody's screen because you didn't "program" how to present that sort of web page at this one isolated terminal in BFEgypt. We now see, however, that McAuley calls upon his experience as a distributed computing architect (and who knows how much influence from MLE - this is precisely where MLE is most at home) to add and include Interoperability and Automation in the Content/Format Management paradigm by stating: The method separates content, form, and function of the computer application so that each may be accessed or modified separately. Note they claim to provide this management idea to the actual functional applications they are deploying. Thus, we are no longer talking about managing website look and feel and information. We are now talking about making those website automatic extensions of whatever application (from simple protocol tranlsations to intricate statistical processing over multiple virtual extensions working different application on multiple machines - perhaps as far as breaking the computation tasks to distribute one parallel task over multiple sets of machines. (orders of thousands) We see now the key excitement in this patent grant is that the very concept of Automation Management consisting of managed sets of content (base of information from baried sources), format (look and feel for any user), and functionality (operations you want the computers in your network to do without intervention by operators - automation). Three processes used to create complex software applications such as web sites are form, function , and content . Form includes graphic designs, user interfaces, and graphical representations created by a designer or a group of designers. Function includes logical functionality, which can be software code created by a programmer or group of programmers. Form includes informative content. Informative content can include written, recorded, or illustrated documentation, such as photographs, illustrations, product marketing material, and news articles. Content can be created by writers, photographers, artists, reporters, or editors. And it appears this sweeping concept is being applied for on a grand scale. A "Function includes logical functionality, which can be software code created by a programmer or group of programmers." "The method includes creating arbitrary objects, managing the arbitrary objects throughout their life cycle in an object library, and deploying the arbitrary objects in a design framework for use in complex computer applications." All of these functions can be managed in the same database and user interface fashion as is used in Publishing Management. VCSY holds a patent on building distributed application frameworks using a wide variety of methods and it looks like a pretty broad grant to me. So this capability that is outlined here can be encapsulated into a programming language which builds web-strung interoperable objects (gee, I wonder where this is all going?) This under SUMMARY OF THE INVENTION and begin imagining The present invention provides a system and method for generating software applications that substantially eliminates or reduces disadvantages and problems associated with previously developed systems and methods used for generation of software applications. Pretty bold claim, Roscoe. Super duper claim, actually. If taken with all claims in this text, it means the more you use this method, the easier it will become for ALL users witin and developers within the network. Precisely the opposite real world reality of life-cycle management using traditional programming languages. We all realize, of course that patent officials go over the wording in ever line of text in a patent application, right? In other words, someone with expertise in this area read this and said, "Well, yes their invention does cover this area." Right? Slap the stamp on it and we'll be on our way, Mister GovmintMan. More specifically, the present invention provides a method for generating software applications in an arbitrary object framework. In other words, we don't care what you're using unrelated data from disparate databases or whether those databases and applications are IBM based or Linux or Unix running Windows or any operating system running on any system. NOTE: This invention can meet those challenges BY IT'S VERY DESIGN, thus the claim is made and granted because the structure of the system demonstrates the validity of the claim. This is a central multiplier for any conglomeration of inter-networked individuals (office LAN, WAN or WWW or whatever) since it means they can use the applications they?ve used for twenty years and mate them up to the latest Microsoft or custom-made application and provide services across a wide path - and if it's done once, it's in the library and easily done thousands more times. "Still another technical advantage of the present invention is that it enables syndication of the software application." The system can build applications that install themselves across the network along with documentation and any other forms of personel/software management required. As noted above, functionality is separate from form and content. Consequently, a user can easily introduce a new look for the application or syndicate the content and functionality of the application to another group without having to recode all of the objects needed to access content. And this is the capability being granted exclusivity to VCSY. I don't get it. What am I missing here? Are there any other outfits who do this level of distributed computation and resources management even without a patent? They all say they do some subset of the overall scheme and tout certain tools or toolsets or suites to accomplish these tasks. SiteFlash is the set of tools that you will use to get WebMethods and BusinessObjects-like tools and suites of tools into the hands of the ordinary business installation. We do not have a copy of the drawings at this website so you'll have to use your imagination perthe following list: FIG. 1 illustrates a prior art workflow diagram for generating a software product; FIG. 2 is a hierarchical workflow diagram for one embodiment of the present invention; FIG. 3 is a flow diagram for one embodiment of the present invention; FIG. 4 is a flow diagram for the embodiment illustrated in FIG. 4. FIG. 5 is a diagram illustrating the components of one embodiment of the present invention used to generate web sites; and DETAILED DESCRIPTION OF THE INVENTION It sounds as though the diagrams suggest this patent addresses the inefficiencies of traditional software product development. Actually, the entire thrust of this patent is the capability to build websites as individual applications which are then syndicated throughout your customer base and able to link up with others of like ilk and capability. This time-saving capability has been claimed in VCSY PRs as being a key savings in the construction of complex interoperable websites. If it works properly the key advantage to this type of system is that the more it is developed and deployed, the easier it is to develop and deploy and maintain. SiteFlash Part 2 By: Portuno_Diamo on December 23, 2004 at 10:22:50 PM This message was edited by Moderator at 2004-12-23 22:22:50 Continued from Part 1 So now you should be able to think through the following claims and see if you can make sense of what this machine-building-machine does. Item 1 spells out the general claim that the system is capable of building computer applications the way content management systems build published interactive websites. The key here is to make a distinction between interactive and interoperable. Interactive is you pushing the website buttons and looking for the answers. Interoperable is your own computer pushing the buttons and providing you with answers formatted the way you like. Also stated in Item 1. is one of the keys to this system is in "creating arbitrary objects with corresponding arbitrary names" Notice this is a key concept in that the patent application takes pains to point out the use of these "arbitrary objects" in the following excerpt from a narrative on FIG. 4: "Arbitrary objects may include any combination of application logic and data desired by a developer. Arbitrary objects can include text file pointers, binary file pointers, compiled executable scripts, database queries, shell commands, remote call procedures, global variables and local variables. Arbitrary objects may also include cached data queries and executables. The arbitrary object framework allows arbitrary objects to be referenced in a consistent manner regardless of the type of object. Also, the arbitrary object framework allows local arbitrary objects to either override global parent arbitrary objects or inherit capabilities and data from the global parent arbitrary object." "Arbitrary objects can execute any function that can be run or understood by the host computer system so that any underlying functionality of the operating system used by the host system can be defined as an object within the arbitrary framework. Legacy data, document objects, CPI programs, and database queries can all be encapsulated as objects within the arbitrary framework. The arbitrary object can be accessed by an arbitrary object name. Arbitrary objects are not tied to their functionality. One arbitrary object can be easily replaced with another arbitrary object of another type." "Arbitrary objects can be managed in an object library. The life cycle of the arbitrary objects may be managed in a consistent manner using revision tracking, roll-back, and sign-off. The object library can include separate specialized object libraries that can be administered separately by different developers in each area. For instance, for a web site used to generate a newspaper, there may be an advertising object library that is physically distinguished from other object libraries, such as an object library for sports or an object library for news. Therefore, queries for advertising can be created without impacting any other area of the web site." "Arbitrary objects can be deployed from the object library into a container page to generate the web site. The container page is a truly dynamic page. Unlike prior art methods, where a static copy of information is often pushed over a firewall to a live web site, the present invention incorporates object caching. An arbitrary object can be cached, rather than caching an entire page. When the arbitrary object is cached, certain elements of the arbitrary object can be specified as dynamic elements while others can be specified as static elements. Therefore, a web site can contain multiple dynamic web pages wherein objects used to construct the form, function, and content of the web page can contain dynamic elements and static elements. This provides flexibility for what needs to be computed or processed at the time that someone, such as a web user, accesses the web page." The numbered claims starting at 2 spell out the basic functions required to construct and manage a software based computer and a software programming language to run on that virtual computer starting with: 2. The method of claim 1, wherein said computer application is a web site. The numbered claims from Item 3 to Item 53 describe the elements of a programming language that can build websites (on individual and mass scales) to function as entire applications. If you like we can focus later on the constructs possible if you use the 53 claims. Thus, in VCSY's world, the website is the computer and all websites can interact with all other websites without the intervention of humans. And that website computer can be programmed to run any application on any machine anywhere the network reaches. With smartcards and RFID that "anywhere the network reaches" goes into your pocket and into your home easily. If you hit a snag simply ask the question and I'll focus on specific claims or content or contention. What is claimed is: 1. A method for generating a computer application on a host system in an arbitrary object framework that separates a content of said computer application, a form of said computer application and a functionality of said computer application, said method comprising: creating arbitrary objects with corresponding arbitrary names of various object types for generating said content of said computer application, said form of said computer application, and said functionality of said computer application; managing said arbitrary objects in an object library; and deploying said arbitrary objects from said object library into a design framework to create said computer application. 2. The method of claim 1, wherein said computer application is a web site. 3. The method of claim 1, wherein said various object types comprise text file pointers. 4. The method of claim 1, wherein said various object types comprise binary file pointers. 5. The method of claim 1, wherein said various object types comprise compiled executables. 6. The method of claim 1, wherein said various object types comprise shell commands. 7. The method of claim 1, wherein said various object types comprise remote procedure calls. 8. The method of claim 1, wherein said various object types comprise global variables. 9. The method of claim 1, wherein said various object types comprise cached executables. 10. The method of claim 1, wherein said various object types comprise cached database queries. 11. The method of claim 1, wherein said various object types comprise local variables. 12. The method of claim 1, wherein said various object types comprise local objects and global parent objects. 13. The method of claim 12, wherein said local objects can override said global parent objects. 14. The method of claim 12, wherein said local objects inherit data from said global parent objects. 15. The method of claim 12, wherein said local objects inherit capabilities from said global parent objects. 16. The method of claim 1, further comprising deploying arbitrary objects globally. 17. The method of claim 1, further comprising deploying arbitrary objects locally. 18. The method of claim 1, wherein the step of managing said arbitrary objects further comprises using revision tracking. 19. The method of claim 1, wherein the step of managing said arbitrary objects further comprises using rollback. 20. The method of claim 1, wherein the step managing further comprises using signoff. 21. The method of claim 1, wherein said arbitrary objects can be accessed and deployed into said design framework using said corresponding arbitrary names. 22. The method of claim 1, further comprising swapping an arbitrary object of one type with an arbitrary object of another type. 23. The method of claim 1, further comprising caching objects. 24. The method of claim 23, wherein the step of caching objects further comprises specifying some elements of an arbitrary object to be dynamic elements and specifying some elements of said arbitrary object to be static elements. 25. The method of claim 1, further comprising generating arbitrary objects in a programming language that is compatible or supported by said host system. 26. A method for generating a web site on a host system in an arbitrary object framework that separates a content of said web site, a form of said web site, and a functionality of said web site, said method comprising: creating arbitrary objects with corresponding arbitrary names of various object types for generating said content of said web site, said form of said web site, and said functionality of said web site; managing said arbitrary objects in an object library; and deploying said arbitrary objects from said object library to a container page to create said web site. 27. The method of claim 26, wherein said various object types comprise text file pointers. 28. The method of claim 26, wherein said various object types comprise binary file pointers. 29. The method of claim 26, wherein said various object types comprise compiled executables. 30. The method of claim 26, wherein said various object types comprise shell commands. 31. The method of claim 26, wherein said various object types comprise remote procedure calls. 32. The method of claim 26, wherein said various object types comprise global variables. 33. The method of claim 26, wherein said various object types comprise local variables. 34. The method of claim 26, wherein said various object types comprise local objects and global parent objects. 35. The method of claim 34, wherein said local objects can override said global parent objects. 36. The method of claim 34, wherein said local objects inherit data from said global parent objects. 37. The method of claim 34, wherein said local objects inherit capabilities from said global parent objects. 38. The method of claim 26, further comprising deploying arbitrary objects globally. 39. The method of claim 26, further comprising deploying arbitrary objects locally. 40. The method of claim 26, wherein the step of managing said arbitrary objects further comprises using revision tracking. 41. The method of claim 26, wherein the step of managing said arbitrary objects further comprises using rollback. 42. The method of claim 26, wherein the step managing said arbitrary objects further comprises using signoff,. 43. The method of claim 26, wherein said arbitrary objects can be accessed and deployed into said container page using said corresponding arbitrary names. 44. The method of claim 26, further comprising swapping an arbitrary object of one type with an arbitrary object of another type. 45. The method of claim 26, further comprising caching objects. 46. The method of claim 45, wherein the step of caching objects further comprises specifying some elements of an arbitrary object to be dynamic elements and specifying some elements of said arbitrary object to be static elements. 47. The method of claim 26, further comprising generating arbitrary objects in a programming language that is compatible or supported by said host system. 48. The method of claim 26, wherein said various object types comprise cached executable. 49. The method of claim 25, wherein said various object types comprise cached database queries. 50. The method of claim 26, further comprising profiling of a user accessing said web site. 51. The method of claim 26, further comprising personalization of said web site for a user accessing said web site. 52. The method of claim 26, wherein said container page comprises arbitrary objects with both dynamic and static elements. 53. The method of claim 26, wherein said content of said web site and said function of said web site can be syndicated. Oh, and by the way - if you're thinking VCSY is hog-tied to proprietary code: "The present invention provides another technical advantage in that users are not required to use a proprietary language to encode." "It" uses whatever you want to use. A little light reading over the weekend in case you won't be watching "It's a Wonderful Life" with your kids. |