home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / sys / mac / database / 917 < prev    next >
Encoding:
Text File  |  1992-07-26  |  8.0 KB  |  172 lines

  1. Newsgroups: comp.sys.mac.databases
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!usc!elroy.jpl.nasa.gov!nntp-server.caltech.edu!news
  3. From: rebecca@cco.caltech.edu (Mark L. Fussell)
  4. Subject: Re: Omnis 7
  5. Message-ID: <1992Jul26.220051.4016@cco.caltech.edu>
  6. Sender: news@cco.caltech.edu
  7. Nntp-Posting-Host: small
  8. Organization: California Institute of Technology, Pasadena
  9. References: <1992Jul22.144814.27933@usenet.ins.cwru.edu>
  10. Date: Sun, 26 Jul 1992 22:00:51 GMT
  11. Lines: 159
  12.  
  13.  
  14. Howdy again,
  15.  
  16. A quick response to Jerry Sy (well, at least it started out as a quick response  
  17. :-).
  18.  
  19. >>  15 character field names
  20. >>    Mildly annoying, but not despicable.  Now 8 characters WOULD be  
  21. >>    despicable.
  22.  
  23. >  well, that was not really the main point.  You get 15 characters for
  24. >  your file name (table name) and 15 characters for your field names,
  25. >  BUT you still get 15 characters if you use the table.field method of
  26. >  addressing a field!  had they made that 30 characters, it will make
  27. >  more sense.  because they didn't, you make have to settel for 7 character
  28. >  table names and field names then, now that is despicable.
  29.  
  30. Whether you use the (unique) fieldname or table.fieldname reference, you get 15  
  31. characters for the fieldname and 15 for the table.  The maximum total length  
  32. for table.fieldname references is 30, not 15.  (When version 1.1 arrives with  
  33. 255 characters per name it will have over-killed this feature)
  34.  
  35.  
  36. ----------------------------------------------------
  37.  
  38. >>  If you want a much longer list of peeves, I'm sure I can create it.  Omnis  
  39. >>  usually makes you painfully aware of its limitations where other programs  
  40. >>  simply don't venture into an area to entice there users (i.e. 4D's  
  41. >>  lack of "Omnis lists", multi-windowing, field events, etc.). 
  42.  
  43. Actually I meant "entice their developers" (with the better spelling also :-)  
  44. more than their users.  
  45.  
  46. >>                                                     ...BUT if you try to  
  47. >>  convert a sophisticated Omnis application to other environments you will 
  48. >>  be in for a big shock. And Omnis will look much, much better.
  49.  
  50. >  entice users is a good description.  I find most features omnis demonstrates
  51. >  in their demo program is IT.  that's it, what you see in the demo is what
  52. >  you only get, nothing more, NO MAS!
  53.  
  54. Omnis's demo programs aren't even faintly close to being the best you can do  
  55. with Omnis.  Doing more requires good examples, flashes of insight, and a  
  56. thorough understanding of how Omnis does things.
  57.  
  58. Unfortunately, as I had mentioned previously, the Omnis documentation is VERY  
  59. BAD for developing advanced applications.  There are no real examples of using  
  60. the newer Omnis 7 capabilities (there are few real examples of anything),  no  
  61. examples of a well strung together high-end application (or even a major  
  62. component of such -- especially list routines), and painfully short  
  63. descriptions of the Omnis 7 commands.  Not much help to discovering what the  
  64. program can do.
  65.  
  66. Note that simple to medium level (4D's "advanced" example programs are about  
  67. medium level) user-interfaces are pretty straightforward and I assume the  
  68. documentation and example programs could get a developer there OK.
  69.  
  70. ----------------------------------------------------
  71.  
  72. >  they did a good job on reports, but maybe not good enough, most of the
  73. >  users of my program wants a report in spreadsheet format! and currently,
  74. >  the only way to get that in omnis is to build an intermediate list first
  75. >  and generate the report from the list , not an excruciating (sp?) work
  76. >  around, but still a work around.
  77.  
  78. I don't know why you could not generate a spreadsheet form report without  
  79. reading data into a list first, but using a list is not an Omnis work-around.   
  80. The Omnis list is one of THE MOST IMPORTANT and powerful features of the  
  81. environment (far stronger than the 4D set for example).  Certainly using the  
  82. best features of an environment is not a work around.  Yes, the ad-hoc report  
  83. generator couldn't do all you wanted, so that is a fair strike against it.
  84.  
  85. ----------------------------------------------------
  86.  
  87. >>  Again, I wouldn't recommend Omnis to everyone.  Omnis's main strengths are  
  88. >>  being able to: develop very sophisticated user-interfaces and reports; make  
  89.  
  90. >  I will call it sophisticated only when it can do what hypercard can do,
  91. >  resize window in your program (I have to write an Omnis external to do
  92. >  this), change scripts and attributes of buttons programmatically ( now
  93. >  I have to create say, 10 different buttons and hide / show them as necessary
  94. >  instead of having just one button (or other objects for that matter) and
  95. >  the ability to modify the attributes (e.g. size, location, etc) dynamically
  96. >  in ca program), etc.  the current state of the user interface is that you
  97. >  are either stuck with it or do excruciating work arounds.
  98.  
  99.  
  100. To move and resize a window procedurally you use the command:
  101.  
  102.     OPEN windowname/leftpos/toppos/rightpos/bottompos
  103. or    OPEN windowname/STACK
  104. or    OPEN windowname/CENTER
  105.  
  106. with each parameter (after the '/') begin optional.  It may be a little weird  
  107. (obscure) to use the same command for "Opening" a window and for  
  108. "Moving/Resizing" a window, but the functionality is there.  You can get the  
  109. current open windows and their positions from:
  110.  
  111.     Build Open Window List
  112.  
  113. ----------------------------------------------------
  114.  
  115. You are quite correct that Omnis can not create or move 'Window Objects' at  
  116. runtime.  For almost all applications this is not important (though I do agree  
  117. it can be very handy).  I do not think that Omnis is the way to create ANY user  
  118. interface and would personally choose Smalltalk for that purpose: having to  
  119. create any user-interface on demand.  
  120.  
  121. Comparing a database development tool with a more general purpose language is  
  122. not very useful unless you compare it on ability and ease in doing the complete  
  123. job: building a single/multi-user relational database.  Hypercard by itself  
  124. would certainly fail at this competition.
  125.  
  126. As a relational database front-end it:
  127.     1) Needs third-party externals to connect to SQL servers,
  128.         and the programming interface will be weaker than Omnis's
  129.     2) No local concept of tables and fields
  130.         (except programmatically)
  131.     3) Could not store the results of queries in a convenient,
  132.        manipulable form,
  133.     4) Has much more limited data structures
  134.     5) Would run slower
  135.  
  136. Even focussing on UI features Hypercard has:
  137.     1) Much poorer multi-windowing support.
  138.     2) Lack of color window objects (except displaying PICTs)
  139.     3) Less built-in window objects 
  140.          (requires externals for popup menus, lists, etc.)
  141.     
  142. Finally, as a development environment Omnis 7 is much stronger (but has a  
  143. stranger language).
  144.  
  145. I'm not arguing against Hypercard being better at some applications than Omnis:  
  146. Hypercard has much better control of the event loop, can create/modify window  
  147. objects on the fly, and has many useful externals designed to go with it.  But  
  148. we were discussing ability to produce high end interfaces to relational  
  149. databases, not any application.
  150.  
  151. An aside: Smalltalk would win against Omnis in many areas where Hypercard  
  152. loses, although it would still require purchasing class extensions for the  
  153. database management routines.  Other than that, I would whole-heartedly  
  154. recommend it to anyone developing many types of databases ASSUMING they have  
  155. the money (LOTS of it for Smalltalk-80 plus the database package, a normal  
  156. amount for Smalltalk/V) and the willingness to travel Smalltalk's learning  
  157. curve.
  158.  
  159. Jerry Sy seems to be comparing Omnis to an application that combines the best  
  160. of Omnis, Hypercard, and SQL (and I assume many other useful features).  I  
  161. personally wish Omnis (or something else) was Smalltalk with persistent  
  162. objects, relational capabilities, a great UI builder, and for under $1000.  I  
  163. don't think Omnis will EVER be all of that, and unfortunately don't know of any  
  164. product which currently is.  But I am constantly looking for it :-)
  165.  
  166.  
  167.                                       -- Mark
  168.  
  169. Mark L. Fussell
  170. rebecca@cco.caltech.edu        
  171.  
  172.