A very fair question. Here are some answers.
1. I am a firm believer in the power of visual programming, and I
disagree with Fred Brooks on its viability. First, its the visual
cortex that is the brain's parallel processor, yet most software is
coded using the sequential cognitive capabilities! My point of view
is as a mechanical engineer. When I worked at PG&E/Bechtel on Diablo
Canyon Nuclear Power Plant, each engineer had a desk and a 4 x 8
table, so we could open full-size layout, P&ID, single-line diagrams
and still have our desk for binders with specs, manuals,
calculations, etc. My view of Brooks' "software crisis" is that it's
because we force programmers to do linear, sequential thinking, and
give them a very small viewport into the problem (most text editors
are not much advanced beyond 80x24 displays).
Successful visual programing models I have used include:
a. Relay Ladder Logic: there are tens of thousands of high school or
less educated technicians/mechanics able to program industrial
equipment using this approach. It's fast, compact, and self-
documenting.
b. Function Block Diagrams for Distributed Digital Control Systems.
Power plant control systems I designed with this technique in 1984
are still running, with essentially the same programs, and have
millions of operating hours on them. Again, the documentation is
easy to follow, and the function blocks are the BEST example of
software objects I have ever seen.
c. Witango.
BTW, I am not opposed to text based programming, and am quite expert
at assembly language.
2. Span of control. There's a more au courant term for this (memory
fails), but it's really important to empower the expert programmers
to do more, because an army of average programmers ends up with least
common denominator results. I think the Witango programming model
allows me to do that, by providing abstraction in various places,
notable the actions, objects, and methods.
3. I have found the server to be very robust -- linux 5.0.1.065
production server has NEVER crashed. (I know how to induce crashes
with server-side JavaSscript, so I don't use it.) I like its
extensibility with custom metatags, and its scalability (though I
have not used it myself). I especially like variable scopes. I know
there are ways to achieve equivalent functionality in PHP, but it's
not as easy or natural for my brain, so these techniques would reduce
MY span of control (2).
4. Writing and testing SQL queries is not really very hard; the
builders don't really give me any benefit there. And complex queries
(self joins) really need to be done by hand anyway. Defining custom
columns for such a thing is just a confusing kludge. The builders
produce HTML 3.2 code, but we use XHTML1, so they don't provide
anything useful. I haven't used them in years.
I know that one benefit of the builders is quick and dirty pages for
admin and such. But with well crafted methods and object instance
config files, you can use previously built and debugged admin
functionality, which will be better aesthetically and probably have
all sorts of additional bells and whistles, like following OWASP
guidelines, that the builders don't provide.
I think I'll take this note, and put it on my blog.
Bill
William M. Conlon, P.E., Ph.D.
To the Point
2330 Bryant Street
Palo Alto, CA 94301
vox: 650.327.2175 (direct)
fax: 650.329.8335
mobile: 650.906.9929
e-mail: mailto:[EMAIL PROTECTED]
web: http://www.tothept.com
On Oct 25, 2007, at 10:01 AM, Robert Garcia wrote:
I have a question, if you go through all the work of doing
everything in directDBMS, and I understand your reasons, why use
witango and not php? You don't have to answer if you would rather
not, I am just curious. If you eliminate the search actions and
stuff, what is witango doing for you?
--
Robert Garcia
President - BigHead Technology
VP Application Development - eventpix.com
13653 West Park Dr
Magalia, Ca 95954
ph: 530.645.4040 x222 fax: 530.645.4040
[EMAIL PROTECTED] - [EMAIL PROTECTED]
http://bighead.net/ - http://eventpix.com/
On Oct 25, 2007, at 9:46 AM, William M Conlon wrote:
I concur. I go a little further:
1. only use DirectDBMS, so you don't need the studio data sources
at all. This has the ancillary benefit or eliminating all the
problems [!CST] with the <DataDictionary /> that crop up in the
Studio, and keeps the appfile smaller.
2. define the <Datasource /> parameters as variables, so they can
be changed outside the appfile.
3. Move all DirectDBMS actions into TCFs (more like MVC) so the
TAF provides business logic and presentation, while the TCF
handles the data model. Use the OnCreate method to load the
<DataSource /> variables. And, keep these variables in a separate
configuration file which can be easily edited without the studio.
Bill
William M. Conlon, P.E., Ph.D.
To the Point
2330 Bryant Street
Palo Alto, CA 94301
vox: 650.327.2175 (direct)
fax: 650.329.8335
mobile: 650.906.9929
e-mail: mailto:[EMAIL PROTECTED]
web: http://www.tothept.com
On Oct 25, 2007, at 7:02 AM, Robert Garcia wrote:
There is another way, it is still a pain in the a$$, but just
about anything you do in the 5.5 studio is. You just have to
choose which PITA you are most comfortable with. I have used the
beta, I don't think that is going to be a solution for a long time.
I am using mysql for instance. It is possible to setup ODBC on
the intel machine for witango and mysql. It is a pain, because
the studio crashes with many configurations. You have to use a
PowerPC binary for the mysql odbc driver on intel, because the
studio is powerpc, and the mysql drivers are not universal. I
wish I could use the actualtech drivers, but witango crashes.
When you create a taf with a datasource called "MyDSN" for
instance, it creates an xml node within the datasources node in
the xml of the taf, like this.
<DataSource ID="MyDSN">
<DSType>ODBC</DSType>
<DSN>MyDSN</DSN>
<DBMS />
<Host>MyDSN</Host>
<Database>Some Vendor Driver Name</Database>
<UserInfo Encrypted="True">
<UserName>@[EMAIL PROTECTED]@[EMAIL
PROTECTED]@#$</UserName>
<Password>@[EMAIL PROTECTED]@[EMAIL
PROTECTED]@@%</Password>
</UserInfo>
</DataSource>
Now if you had a mysql JDBC driver on the server, and the
Datasource setup on the server as "MyDSN" but using JDBC, all you
would have to do to this taf, to get it to work on the server, is
change value of the DSN node to JDBC, so it looks like this:
<DataSource ID="MyDSN">
<DSType>JDBC</DSType>
<DSN>MyDSN</DSN>
<DBMS />
<Host>MyDSN</Host>
<Database>Some Vendor Driver Name</Database>
<UserInfo Encrypted="True">
<UserName>@[EMAIL PROTECTED]@[EMAIL
PROTECTED]@#$</UserName>
<Password>@[EMAIL PROTECTED]@[EMAIL
PROTECTED]@@%</Password>
</UserInfo>
</DataSource>
Thats it. The userid and the password will work, and the table
and column definitions built from the studio using odbc will work
just fine, they are the same as long as you were using the same
db as odbc dsn.
I have done this with mysql, mssql, oracle, and primebase. If you
are not using one of those, I imagine it would work if your DB
has both jdbc and odbc drivers.
Now the REAL PITA comes in when you want to deploy, or then edit
after deployment, you have to open the thing in a text editor and
manually edit.
However, it would be REALLY easy to create a drag and drop little
app, that would do this for you. So imagine you had an app, that
you drug onto it any number of tafs. It was called "DSN - ODBC to
JDBC". It would quickly parse and change the DSN nodes to JDBC.
You would just drag your taf on it, and commit to your server.
You could have another app, called "DSN - JDBC to ODBC" for when
you had to edit a taf from the server in the studio.
Now don't complain to me about how a$$backwards this is. ;-) I am
just the messenger, but it would work.
--
Robert Garcia
President - BigHead Technology
VP Application Development - eventpix.com
13653 West Park Dr
Magalia, Ca 95954
ph: 530.645.4040 x222 fax: 530.645.4040
[EMAIL PROTECTED] - [EMAIL PROTECTED]
http://bighead.net/ - http://eventpix.com/
On Oct 25, 2007, at 6:07 AM, Stephen Su wrote:
thank you all, we are running on intel machines, and have tried
parallels which caused more problems than using the mac os
without DB connection.
: ( stephen
On Oct 25, 2007, at 6:29 AM, Dale Graham wrote:
As a stop-gap, I have been using the Windows version of the
editor on Parallels.... testing with Mac server version on the
same computer. Weird but works. (The irony is that because it's
Intel, it runs Parallels very well, and the INTEL (Windows)
JDBC works just fine, though setting up Java/JDBC on Windows
can be a definite problem.)
On Oct 25, 2007, at 2:59 AM, Stephen Su wrote:
Has anyone successfully configured witango studio 5.5 to
connect up with data sources via. JDBC on an intel based
MacBook Pro?
- stephen
_________________________________________________________________
_______
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/
maillist.taf
__________________________________________________________________
______
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/
maillist.taf
___________________________________________________________________
_____
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
____________________________________________________________________
____
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
_____________________________________________________________________
___
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
______________________________________________________________________
__
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
________________________________________________________________________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf